본문 바로가기

개발/BACK

[Java] 형 변환 방법 (String,Long,Double,Int..) 정리 + list,Array 변환

728x90

 

코딩을 하다보면, 변수의 자료형을 강제로 치환해주어야 하는 경우가 생긴다.

가령, DB에서 varchar 형태로 저장되어있는 데이터를 숫자 형태로 치환하여 수식을 작성해야 할 때, 강제 형 변환이 필요하다.

 

추가로, List를 Array로 변환하는 방법, Array를 List로 변환하는 방법을 알아보겠다.

 


 

1

String  -> INT

 

문자형을 정수형으로 바꾸는 방법

 

        
        String test = "123";
 
        int num = Integer.valueOf(test);
 
        ||
 
        String test = "123";
        int num = Integer.parseInt(test);
cs

 


 

2

 

INT -> String

 

정수형을 문자형으로 바꾸는 방법

 

 

        
        int test = 123;
 
        String lang = String.valueOf(test);
 
        ||
 
        int test = 123;
        String lang = String.toString(test);
cs

 


3

 

작은 자료형 -> 큰 자료형 (자동 변환)

 

자료형 크기가 작은 자료형에서 큰 자료형으로 바꾸는 방법

 

 

        
        int small_value = 123;
 
        long big_value = small_value;
 
        // big_value = 123.0
 
        ||
 
        char char_value = "A";
        int int_value = char_value;
 
        //char -> int로 변경 시, 유니코드 변환 A 를 유니코드로 변환 시, 65
cs

 


4

큰 자료형 -> 작은 자료형 (강제 변환)

 

큰 자료형에서 작은 자료형으로 바꾸는 방법

(3번의 예제와는 달리 큰 자료형에서 작은 자료형 변환은 자동 형 변환이 불가함)

 

 

        
        long big_value = 123.1;
 
        int small_value = (int)big_value;
 
        // small_value = 123
    
        
        ||
    
        double big_value = 5.0;
        
        int small_value = (int)big_value;
 
        // small_value = 5
cs

 

 


5

List -> Array (배열) 

 

리스트를 배열로 바꾸는 방법

 

 

        
        List<Integer> numberList = new ArrayList<>();
 
        numberList.add(1);
        numberList.add(2);
        numberList.add(3);
 
        Integer numberArr[] = numberList.toArray(new Integer[numberList.size()]);
        
        // numberArr = [1,2,3]
cs

Array(배열) -> List 

 

배열을 리스트로 바꾸는 방법

 

 

            Integer[] numArr = {1,2,3};
 
            List<Integer> numList = new ArrayList<>();
 
 
            numList = new ArrayList<>(Arrays.asList(numArr));
 
            //numList.get(0) = 1
cs

 

Arrays.asList(numArr) 를 new ArrayList로 감싸주는 이유는 asList 함수가 고정 크기의 List를 리턴하기 때문에,

객체를 재생성한다.

 

 

728x90