본문 바로가기
어쩌면 모두 궁금할지도?

(int) vs. parseInt vs. valueOf

by notcherry 2023. 7. 4.

 

 

System.out.printf((int)(Math.pow(2,i))+" ");

 

(int) 대신에 parse나 value쓰면 안 되나? 갑자기 궁금

 

 

 

1. parseInt : 참조 타입 변환으로 int로 기본 자료형 리턴해줌

해줬더니

숫자가 아닌 문자형을 숫자형으로 바꾸려고 하니 당연 포맷 에러가 발생했다.

 

 

2. valueOf : 참조 타입 변환으로 Integer.valueOf 를 사용했다 하면 new Integer로 객체를 리턴해줌

 

이 방법 또한 빨간 줄이 떴고 1번과 같은 루틴이 돈다.

 

 

parse와 value 모두 문자형 string에서는 적용이 안 되며

int로 강제 타입 변환은 정수인 string에서만 가능하다는 것을 배웠다!(string으로 변환 후 (int)도 해봤음)

 

 

 

+ character와 string 차이 궁금해서 valueOf로 해봄 ㅎ

    char[] arr = {'h','e','l','l','o'};
        String str = String.valueOf(arr);
        System.out.println(str);

결과