알고리즘/자료구조와 알고리즘

[JAVA] 배열과 관련된 메소드 살펴보기

정석이 2022. 7. 23. 18:57

 

자바 배열 출력하기

 

💫 for문을 돌리지 않고 배열 고대로 출력하기

 

 

자바는 print(배열변수) 를 하면 배열 자체의 주소를 출력한다.

 

이 때 사용하는 메소드가 Arrays.toString(object[] o) 가 된다.

 

 

public class Array {
    public static void main(String[] args){
        int arr1[] = {1,2,3};
        String arr2[] = {"J", "A", "V", "A"};

        System.out.println(arr1);
        System.out.println(arr2);

        System.out.println(Arrays.toString(arr1));
        System.out.println(Arrays.toString(arr2));
    }
    
}

 

를 실행하면

 

 

 

이 출력된다.

 

 

 

 

💫 String 문자열을 char 배열에 한 글자씩 저장하기

 

 

 

첫 번째 방법은 for문을 이용하는 방법이다.

 

for문을 돌리는건 charAt() 메소드를 사용하면 된다.

 

import java.util.Arrays;

public class ArrayTest2 {
    public static void main(String[] args){

        String str = "Hello JAVA ^^";
        char[] chars = new char[str.length()];

        for(int i = 0; i < chars.length; i++)
            chars[i] = str.charAt(i);

        System.out.println(Arrays.toString(chars));
    }
    
}

결과
[H, e, l, l, o,  , J, A, V, A,  , ^, ^]

 

 

 

 

 

두 번째 방법은 메소드를 이용하는 방법이다.

 

 

toCharArray() 메소드를 사용하면 된다.

 

public class ArrayTest2 {
    public static void main(String[] args){

        String str = "Hello JAVA ^^";
        char[] chars = str.toCharArray();

        System.out.println(Arrays.toString(chars));
    }
    
}

결과
[H, e, l, l, o,  , J, A, V, A,  , ^, ^]

 

 

 

 

💫  Char to int

 

char 을 int으로 형변환을 하는 방법은 -'0'을 넣어주면 된다.

 

0의 아스키코드는 48이고 숫자 1의 아스키코드는 49이기 때문에.. '1'-'0' = 1이 되는 것이다.

 

public class ArrayTest3 {
    public static void main(String[] args){

        String str = "12345";
        char[] chars = str.toCharArray(); // [1,2,3,4,5]
        int sum = 0;
        
        for(int i= 0; i < chars.length; i++)
        	sum += chars[i] - '0';
        
        System.out.printf("sum: %d%n", sum);
    }
}

결과
sum: 15

 

 

 

 

 

💫  Char[] to String

 

 

다음은 char[] 배열 안에있는 값을 합쳐서 String으로 만드는 방법이다.

 

 

toCharArray() 메소드를 사용하면 된다.

 

 

public class ArrayTest3 {
    public static void main(String[] args){

        String str = "자바 조아";
        char[] chars = str.toCharArray();
        
        System.out.println(String.valueOf(chars));
    }
}

결과
자바 조아