2010-02-16 4 views
6

.NET에서 여러 유형으로 존재할 수있는 "값"이있을 때 해당 유형 (통화 유형, XML 데이터 대 객체 표현 등)을 전환하기 위해 TypeConverter를 쉽게 사용할 수있었습니다. . Java에서이 상황을 처리하는 가장 좋은 방법은 무엇인지 모르겠습니다. 자바에 TypeConverter가 있나요? 당신은 변환하려는 경우Java에 해당하는 .NET TypeConverter가 있습니까

List aList = new List(); 
aList.add("Hello World); 
String s = (String) aList.get(0); 

: 당신이 문자열이 포함 된 목록 객체가 ..이 같은 목록에서 문자열을 잡아 것입니다 경우

답변

2

.NET 세계에서 온 사람이라면 상자 밖에없는 것이 놀랄 것입니다. 이것은 원시 (int, long) 등 원시적 래퍼 (Integer, Long 등), 필요에 따라서 int로부터 Integer 에의 자동 보봇 (JDK 1.5로부터의 것)과 같은 것이 있기 때문입니다.

불쌍한 Java 개발자가 수동으로 물건을 변환합니다. (위에서 @Boolean으로 주어진 몇 가지 예) 또한 이것을 수행 할 때 == 연산자를 사용하는 끝없는 번거 로움이 있습니다. 예 : 127까지의 오토 박싱 정수가 캐시됩니다.

public void testsimple() { 
    Integer a = 124, b = 124, c = 500, d= 500; 
    System.out.println(a == b); //prints true in JDK 1.6 
    System.out.println(c == d); //prints false in JDK 1.6 
} 

너무 많은 데이터 변환이 필요한 거대한 응용 프로그램을 작성하는 경우에는 직접 작성할 수 있습니다. Spring의 "TypeConverter"인터페이스는 적절한 시작이 될 수 있습니다.

사용이 링크 http://imagejdocu.tudor.lu/doku.php?id=howto:java:how_to_convert_data_type_x_into_type_y_in_java 당신이 어떤 문제가 대화 형 UI 디자이너는 문자열로 값을 표시하고, UI 디자이너가 이해하지 못하는 유형의 사용자 편집 타당성 값을 할 수 있도록 부분적으로 .NET에 추가

0

그럼 당신은 예를 들어 ... 일을 타입 변환 할 수 있습니다 숫자를 문자열 ..이 비슷한 일을 할 것입니다 :

int i = 200; 
String s = "" + i; 
:

String aString = "200"; 
int i = Integer.Parse(aString); 

나는이 작업을 수행하여 문자열로 정수를 변환 할 때 속임수 0

0

TypeConverter를에게있는 경우.

TypeConverter는 데이터 바인딩에서도 사용됩니다.

컴파일시 알 수있는 유형간에 변환하기 위해 자신의 소프트웨어에서 TypeConverter를 사용할 수 있다는 사실은 부작용이며 생성 된 기본 사용 사례가 아닙니다.

Java는 "RAD"도구를 지원하려 한 적이 없기 때문에 TypeConverter 및 PropertyDescriptors 등이 필요하지 않습니다. .net은 VB6과 동일한 UI 개발을 허용하도록 설계되었습니다.

관련 문제