반응형
이번 포스팅에서는 숫자를 문자열로 변환하는 방법에 대해 알아보려합니다.
문자열을 숫자로 변환하는 방법은 아래 포스팅을 참고하시면 됩니다.
숫자를 String으로 변환하는 방법은 총 3가지가 있습니다.
toString(), valueOf() 그리고 간단하게 빈 문자열과 int를 '+' 연산자로 연결하여 문자열로 변환하는 방법.
하나씩 알아보겠습니다.
Integer.toString()
.toString()에 변환하고자 하는 정수를 넣어 문자열로 반환합니다.
public class toString {
public static void main(String[] args) {
int int1 = 1234;
int int2 = -1234;
String str1 = Integer.toString(int1);
String str2 = Integer.toString(int2);
System.out.println("String str1 : " + str1);
System.out.println("String str2 : " + str2);
}
}
String.valueOf()
위와 똑같이 변환하고자 하는 정수를 넣어 문자열로 반환합니다.
public class StringvalueOf {
public static void main(String[] args) {
int int1 = 1234;
int int2 = -1234;
String str1 = String.valueOf(int1);
String str2 = String.valueOf(int2);
System.out.println("String str1 : " + str1);
System.out.println("String str2 : " + str2);
}
}
이렇게 보면 차이가 없어 그냥 둘 중 아무거나 사용하면 될 것 같지만, 이 두 메서드도 차이점이 존재합니다.
두 메소드의 차이점은 바로 null 값에 따른 NullPointerException (NPE) 의 발생 유무입니다.
매개변수로 받는 값이 null일 시 toString()과 String.valueOf() 차이점.
- toString() : null 값을 형 변환 시 NullPointerException(NPE)이 발생 / Object의 값이 String이 아니여도 출력합니다.
- String.valueOf() : 파라미터로 null이 오면 "null"이라는 문자열을 출력합니다.
따라서 toString()은 null값을 형변환 하면 NPE 오류가 발생하기 때문에, NPE를 방지할 수 있는 String.valueOf()를 사용하는 것이 더 좋습니다.
int + ""
문자열에 int를 이어 붙이면 문자열이 리턴되는 속성을 이용한 간단한 방법입니다.
public class IntPlus {
public static void main(String[] args) {
int int1 = 1234;
int int2 = -1234;
String str1 = int1 + "";
String str2 = int2 + "";
System.out.println("String str1 : " + str1);
System.out.println("String str2 : " + str2);
}
}
참고자료
https://hianna.tistory.com/524
https://dev-coco.tistory.com/101
'◼ JAVA' 카테고리의 다른 글
[Java/자바] 연산자의 모든 것 (0) | 2022.10.13 |
---|---|
[Java/자바] StringBuilder 클래스란 ? (0) | 2022.10.13 |
(Java/자바) 문자열을 정수로 변환 - parseInt(), valueOf() (0) | 2022.10.12 |
Java - 특수 문자 다루기 (0) | 2022.10.11 |
Java - print, println, printf 출력문의 모든 것 (0) | 2022.10.10 |