본문 바로가기
언어/JAVA

String.valueOf()과 Object.toString() 차이점

by 코딩맛집 2023. 5. 2.

문자열 형 변환의 종류로는 대표적으로 String.valueOf() 속성과 Object.toString() 두 가지 메서드가 존재한다.
두 메서드 모두 객체를 String 문자열 참조 자료형으로 형 변환하는 역할을 하고 있다.

 

String.valueOf()와 Object.toString()의 차이점

1. 변환 가능 자료형의 종류 및 개수
2. null 값의 처리 여부에 따른 차이

보통 문자열로 형 변환 시 toString()을 자주 사용!!
But,  null 값을 문자열로 형 변환 시 NullPointerException을 발생시킴.

그에 반해 String.valueOf()를 사용하면 전달 받은 파라미터가 null이 전달될 경우 문자열 "null"을 반환한다.

 

Object.toString()

public class Main {
    public static void main(String[] args){
        Object obj = null;
        System.out.println(obj.toString());
    }
}

//출력
Exception in thread "main" java.lang.NullPointerException:

String.valueOf()

public class Main {
    public static void main(String[] args){
        Object obj = null;
        System.out.println(String.valueOf(obj));
    }
}

//출력
null

'언어 > JAVA' 카테고리의 다른 글

[JAVA] 깊은 복사와 얕은 복사  (0) 2024.01.02
[Java] 배열을 문자열로 변환  (0) 2023.05.02
StringTokenizer  (0) 2023.04.02
[chapter 13] 확인 문제  (0) 2023.03.02
[멀티 스레드2]  (0) 2023.02.27