张佳ZHJ-MEZHJ
欢迎光临!我们一直在努力

자바 튜토리얼 12 - 5 | Array 메서드 | 컬렉션 프레임워크 |

 

배열 복사

 

Array 에는 배열사용을 지원하기 위한 여러가지 static 메서드들이 들어있다.

 

복사는 한 배열에 들어있는 값들을 다른 배열로 복제하는 것을 말한다. 참조만 복사하는게 아니라 완전히 복사해야 각각의 데이터가 별개의 메모리를 갖는다.

        int[] array1 = {1,3,5,7,9,11,13,15};
        int[] array2 = Arrays.copyOf(array1, array1.length);

        for (int n : array1) {
            System.out.print(n   \" \");
        }
        System.out.println();

        for (int n : array2) {
            System.out.print(n   \" \");
        }
        System.out.println();

 

배열 채우기

배열을 채우는 방법은 여러가지가 있다. 초기화를 하고 싶을 때 fill 을 사용한다.

 

        int[] array3 = new int[7];
        Arrays.fill(array3, 7);

        for (int n : array3) {
            System.out.print(n   \" \");
        }
        System.out.println();

 

toString 사용하기

 

이거는 배열에 들어있는 내용을 확인하기 위한 용도이다. for 나 while 문으로 확인하기 귀찮으니까 요긴하게 사용할 수 있다.

int[] array5 = new int[10];
        Arrays.setAll(array5, (i) -> (int)(Math.random()*10) 1);

        System.out.println(Arrays.toString(array5));

 

배열 정렬과 이진검색

배열을 정렬한다. sort 메서드 하나로 정렬되니까 일이 쉽다.

 

배열의 이진검색은 sort로 정렬이 되어야 제대로된 검색을 표시한다. 정렬하지 않은 상태에서 이진검색을 하면 -5 같은 잘못된 값이 나온다.

 

        // ----- 배열 정렬(sort) -----

        printTitle(\"배열 정렬\");

        int[] array4 = {2,6,4,8,20,14,18,16,12,10};
        Arrays.sort(array4);
        int key = 12;
        System.out.println(Arrays.toString(array4));

        // ----- 배열 이진검색 -----

        printTitle(\"배열 이진검색\");

        int index = Arrays.binarySearch(array4, key);
        System.out.println(\"binary search key : \"   key   \" index : \" index);

 

배열 <-> 리스트 변환

배열을 리스트로 변환시킨다. 변환시에는 자료형이 중요하다. 자료형이 맞지 않으면 변환이 안된다.

 

        // ----- 리스트 변환 String -----

        printTitle(\"리스트 변환 - String\");

        String[] array = {\"A\", \"B\", \"C\", \"D\"};
        System.out.println(\"Array : \"  Arrays.toString(array));
        ArrayList<String> list1 = new ArrayList<String>(Arrays.asList(array));

        System.out.println(\"ArrayList : \"   list1);

        // ----- 리스트 변환 Integer -----

        printTitle(\"리스트 변환 - Integer\");

        Integer[] array7 = {1,3,5,7,9};

        ArrayList<Integer> list2 = new ArrayList<Integer>(Arrays.asList(array7));
        for (int i: list2) {
            System.out.print(i   \" \");
        }
        System.out.println();

        printTitle(\"배열로 다시 변환 - Integer\");

        Integer[] array8 = list2.toArray(new Integer[list2.size()]);

        for (int i: array8) {
            System.out.print(i   \" \");
        }

 

*배열 -> 리스트

 

배열은 Arrays 클래스의 메서드로 변환

 

*리스트 -> 배열

 

리스트는 toArray 라는 메서드로 변환

 

잘 구현된 자료형을 가져다 쓰기만 하면 되니까 어렵지 않은 내용이다.

赞(0) 打赏
未经允许不得转载:张佳ZHJ-MEZHJ » 자바 튜토리얼 12 - 5 | Array 메서드 | 컬렉션 프레임워크 |

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

张佳ZHJ-MEZHJ

登录账户注册账号

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏