취미처럼

[JAVA] 문자열 형 변환 비교(casting VS toString VS String.valueOf) 본문

JAVA/이론

[JAVA] 문자열 형 변환 비교(casting VS toString VS String.valueOf)

sirius 2021. 3. 23. 11:50

1. casting : Object가 String이 아니면, 캐스팅 에러가 발생한다.

2. toString : Object가 null이면  NullPointerException이 발생한다. 

3. String.valueOf : 파라미터가 null이면 문자열 "null"을 리턴한다.

 

public static void main(String args[]) {
		
  int num = 1;
  Object obj = null;
  Integer integer = new Integer(1);

  // (String) 캐스팅
  String str1 = (String) num;					// 캐스팅 에러
  String str2 = (String) obj;					// null
  String str3 = (String) integer;				// 캐스팅 에러


  // toString()
  String toString1 = num.toString();				// 컴파일 에러
  String toString2 = obj.toString();				// java.lang.NullPointerException
  String toString3 = integer.toString();			// 1


  // String.valueOf()
  String strVal1 = String.valueOf(num);				// 1
  String strVal2 = String.valueOf(obj);				// null
  String strVal3 = String.valueOf(integer);			// 1
		
}

'JAVA > 이론' 카테고리의 다른 글

[JAVA] BufferedReader vs Scanner  (0) 2021.04.13
[JAVA] N진수 변환(2진수, 8진수, 10진수, 16진수)  (0) 2021.03.26
[JAVA] 콜백  (0) 2021.03.23
[JAVA] 참조  (0) 2021.03.23
[JAVA] boxing, unboxing  (0) 2021.03.23
Comments