차이가 뭘까
Object foo = "something";
String bar = String.valueOf(foo);
및
Object foo = "something";
String bar = (String) foo;
실제로 문자열으로 객체에는 string 으로 변환 경우에만 적용됩니다.
Object reallyAString = "foo";
String str = (String) reallyAString; // works.
Object notAString = new Integer(42);
String str = (String) notAString; // will throw a ClassCastException
['스트라이트바루에로프 ()'] [1] 그러나 너희에게 redhat. 전달하십시오 'String' 로 변환할 수 있도록 노력하겠다. 모두 처리한다 프리미티브를 ('42tb') 와 객체 ('새로운 정수 (42)', 이를 이용하여 object& # 39 의 ['toString ()'] [2]).
String str;
str = String.valueOf(new Integer(42)); // str will hold "42"
str = String.valueOf("foo"); // str will hold "foo"
Object nullValue = null;
str = String.valueOf(nullValue); // str will hold "null"
참고 특히 마지막 예: 반군지역 'null' 를 ' ()', ',' " 문자열을 스트라이트바루에로프 반환되므로 null".
[1]: http://docs.oracle.com/javase/7/docs/api/java/lang/String.html # valueOf% 28java.lang.object% 29 [2]: http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html # toString% 28%29
'캐스팅' 에 장애가 발생할 경우 객체인지 제공하는 '아닌' 구체화하십시오.
>. 최종 개체 obj = null; >. 최종 구체화하십시오 스트라발로포비 = 스트라이트바루에로프 (목표); >. 스테르 카스트로포비 최종 문자열 (String) = obj. >. if (null = 스트라발로포비) 시스템지우트리프린틀린 (,) 는 " 스트라발로포비 null"). >. if (null = 스테르 카스트로포비) 시스템지우트리프린틀린 (,) 는 " 스테르 카스트로포비 null").
첫 번째 이리에 스트라이트바루에로프 ',' 한 경우에만 문자열으로 되돌려줍니다 객체인지 외의 다른 유형 원하는거요 값이 유형 또는 구체화하십시오. 다른 it 예외를 던진다.
후자의 경우, 실패할 수 있는 한, 당신은 직접 캐스팅 객체에는 isn& # 39 는 구체화하십시오.
온라인 예.