ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 유틸리티 API (3) java.util.Arrays 클래스
    IT/개발(자바, 서블릿, 스프링 등) 2020. 1. 19. 22:01

    배열에 관한 여러 기능을 제공한다. Arrays 클래스에서 제공되는 모든 메서드가 static으로 선언되어 있으므로 'Arrays.메서드()' 형태로 사용한다. 

     

    (아래의 표에서 * 표시는 오버로딩)

    제어자 및 타입 메서드 설명
    static int binarySearch(*) 배열에서 매개변수로 전달받은 값을 검색한 후 인덱스를 반환
    static *[] copyOf(*[] original, int len) original 배열을 len 길이만큼 복사한 배열을 반환
    static boolean
    equals(*[] a, *[] a2) 매개변수로 전달받은 두 배열이 같은지 비교
    static void
    sort(*[] a) 배열 내용을 정렬
    static String
    toString(*[] a) 배열 내용을 문자열로 반환

     

    public class Test {
    	public static void main(String[] args){
        	int score[] = {85, 90, 95, 100, 75};
            int score2[] = Arrays.copyOf(score, score.length);
            int score3[] = Arrays.copyOfRange(score, 3, 5);
            
            int score4[] = new int[score.length];
            System.arraycopy(score, 0, score4, 0, score.length);
            
            System.out.println(Arrays.toString(score));
            System.out.println(Arrays.toString(score2));
            System.out.println(Arrays.toString(score3));
            System.out.println(Arrays.toString(score4));
            
            System.out.println(Arrays.equals(score, score2));
            
            Arrays.sort(score);
            System.out.println(Arrays.toString(score));
            System.out.println(Arrays.equals(score, score2));
            
            int index = Arrays.binarySearch(score, 100);
            System.out.println(index);
        }
    }
    
    [실행결과]
    [85, 90, 95, 100, 75]
    [85, 90, 95, 100, 75]
    [100, 75]
    [85, 90, 95, 100, 75]
    true
    [75, 85, 90, 95, 100]
    false
    4

     

    System.arraycopy() 메서드는 java.lang 패키지의 System 클래스에서 static으로 선언된 메서드다. 배열을 복사하는 기능을 한다. 5개의 인자값은 순서대로 다음을 의미한다. System.arraycopy(복사할 원본, 복사할 원본의 시작 위치, 복사될 대상, 복사될 곳의 시작 위치, 복사할 배열의 길이); Arrays.toString() 메서드는 매개변수로 전달받은 배열의 내용을 문자열로 반환한다.

Designed by Tistory.