Java의 차이점.toString(), (String), valueOf() 메서드

자바 프로젝트의 실제 개발과 응용에서 대상을 String으로 바꾸는 기본 기능을 자주 사용해야 한다.본고는 자주 사용하는 전환 방법에 대해 총결을 진행할 것이다.자주 사용하는 방법에는 Object가 있습니다.toString(), (String) 변환할 객체, String.valueOf(Object) 등.다음은 이 방법들을 하나하나 분석한다.
메서드 1: Object를 사용합니다.toString() 메서드는 다음 예제를 참조하십시오.

Object object = getObject();
System.out.println(object.toString());
이런 사용 방법 중, 자바 때문에.lang.Object 클래스에는 이미 공공 방법이 있습니다.toString (), 따라서 어떤 엄격한 의미의java 대상에 대해서도 이 방법을 사용할 수 있습니다.그러나 사용할 때 object가null값이 아니라는 것을 보증해야 합니다. 그렇지 않으면 NullPointerException 이상이 발생합니다.이 방법을 사용할 때 일반적으로 파생 클래스는 Object의 toString () 방법을 덮어씁니다.
방법 2: 형식 변환(String)object 방법을 사용합니다. 이것은 표준 형식 변환입니다. object를 String 형식의 값으로 변환합니다.이 방법을 사용할 때 주의해야 할 것은 유형이 반드시 String 유형으로 바뀌어야 한다는 것이다.따라서 변환 가능 여부를 판단하기 위해 instanceof로 유형 검사를 하는 것이 좋다.그렇지 않으면 CalssCastException 예외가 발생하기 쉽습니다.또한 특히 조심해야 할 것은 Object 유형으로 정의된 대상이 String으로 전환될 때 문법 검사가 틀리지 않기 때문에 잠재적인 오류가 발생할 수 있습니다.이럴 때는 각별히 조심해야 한다.예:

Object obj = new Integer(100);
String strVal = (String)obj;
Integer 유형을 String 유형으로 강제로 변환하여 통과할 수 없기 때문에 실행 중 오류가 발생합니다.하지만

Integer obj = new Integer(100);
String strVal = (String)obj;
형식 코드라면 문법 오류가 발생합니다.
이 밖에 null 값은 모든 자바 종류로 강제로 변환할 수 있기 때문에 (String)null도 합법적입니다. 3: 채택String.valueOf(Object) String.valueOf(Object) Object.toString()。 그러나 Object#toString()과는 다릅니다.앞의 방법1의 분석에서 후자를 사용할 때null이 아니라는 것을 보증해야 한다고 언급했다.그러나 세 번째 방법을 사용할 때object가null값인지 걱정할 필요가 없습니다.문제를 설명하기 편리하도록 관련 원본 코드를 분석해 봅시다.Jdk에서 String.valueOf(Object) 소스는 다음과 같습니다.

public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString(); }
위의 원본 코드를 보면null값이 걱정할 필요가 없는 이유를 뚜렷하게 알 수 있다.그러나 이것도 마침 우리에게 위험을 주었다.object가 null일 때 String을 주의해야 합니다.valueOf (object) 의 값은null 대신 문자열'null'입니다!!!사용 과정에서 주의해야 한다는 것을 명심해라.하면, 만약, 만약...if(String.valueOf(object)==null){System.out.println(“ null!”);} 이런 문장은 어떤 문제가 발생할 수 있습니다.콘솔에 출력할 때 시각적으로 다음과 같은 문장이 실행된 결과에서 어떤 차이가 있는지 다시 생각해 보자.

System.out.println(String.valueOf(null));// “null”
System.out.println(null);// null
우리가 본 출력은 똑같은 것이 될 것이다:null, 그러나 그것들의 의미는 같습니까?
위에서 말한 것은 여러분에게 소개된 자바의 차이점입니다.String (), (String), value Of () 방법은 여러분에게 도움이 되었으면 합니다. 만약에 궁금한 것이 있으면 저에게 메시지를 남겨 주십시오. 편집자는 제때에 여러분에게 답장할 것입니다.여기에서도 저희 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기