본문 바로가기

공부/자바

int형 String형으로 변환

반응형
참조 : http://blog.outsider.ne.kr/158

별것 아니라고 생각하고 있었는데 왠걸 갑자기 하려니 은근히 해매게 되더라는;;;;

숫자타입을 String으로 바꾸려는데 당연하다고 생각했던 toString()으로는 숫자타입을 스트링으로 바꾸어 줄 수가 없었다.

  1. int temp = 1;   
  2. String str = temp.toString();   

이건 "Cannot invoke toString() on the primitive the type int"라는 에러가 난다. 당연하다고 생각한 게 안되니까 순간 당황....



머 쉽게 해결하려면

  1. int temp = 1;   
  2. String str = "" + temp;   

간단히는 이렇게 해결하면 된다. 공백 스트링과 이어붙혀서 스트링으로 만들어주면 된다. 하지만 먼가 세련(?)되지 못한 느낌? 편법같은 느낌? 찾아보니 있었다.




  1. int temp = 1;   
  2. String str = String.valueOf(temp);   

  1. int temp = 1;   
  2. String str = Integer.toString(temp);   

위 2가지 방법이 모두 사용가능하다. 앞에 얘기한 ""과 이어붙히는 것과 퍼포먼스의 차이가 있는지는 모르겠지만 보기에는 좀더 명시적이라고 할까나... 내가 느끼기엔 더 세련된 방법이다. 2가지 방법 모두 사용가능하고 Logn타입도 동일하게 사용이 가능하다.

반응형