String.valueOf()

드코미·2025년 9월 1일
post-thumbnail

String.valueOf() 메서드는 기본 데이터 타입(primitives)과 객체(objects)를 모두 문자열로 변환할 수 있도록 오버로딩(overloading)되어 있습니다.

  • 기본 타입(int, double, char, boolean 등): String.valueOf()는 해당 값을 나타내는 문자열을 생성하여 반환합니다. 예를 들어 int i=123;일 때 String.valueOf(i)는 "123"이라는 문자열을 반환합니다.
  • 객체: 객체가 인자로 주어지면, String.valueOf()는 해당 객체의 toString() 메서드를 호출하여 그 반환값을 문자열로 사용합니다. 만약 객체가 null이면 "null"이라는 문자열을 반환합니다.

String.valueOf() vs. toString()

String.valueOf()와 객체의 toString() 메서드는 둘 다 문자열 변환에 사용되지만, 중요한 차이점이 있습니다.

  • toString(): 객체가 null일 때 NullPoinerException을 발생시킬 수 있습니다. 예를 들어, MyObect obj = null;일 때 obj.toString()은 오류가 발생합니다.
  • String.valueOf(): null값을 안전하게 처리합니다. String.valueOf(null)은 예외를 발생시키지 않고 "null"이라는 문자열을 반환합니다.

따라서 String.valueOf()null이 될 수 있는 객체를 문자열로 변환할 때 더 안전하게 사용할 수 있는 장점이 있습니다.

profile
할 수 있다!!!

0개의 댓글