>Java >java지도 시간 >Java에서 컬렉션 작업에 컬렉션 기능을 사용하는 방법

Java에서 컬렉션 작업에 컬렉션 기능을 사용하는 방법

WBOY
WBOY원래의
2023-06-26 15:47:041197검색

Java의 Collections 클래스는 컬렉션 작업에 일반적으로 사용되는 알고리즘 세트를 제공합니다. 이러한 기능을 사용하여 Java 개발자는 컬렉션에 대한 정렬, 검색, 바꾸기, 복사 및 기타 작업을 쉽게 수행할 수 있습니다. 이 기사에서는 독자가 Java에서 컬렉션 작업을 수행하기 위해 컬렉션 함수를 사용하는 방법을 이해하는 데 도움이 되도록 일반적으로 사용되는 몇 가지 컬렉션 함수를 소개합니다.

  1. Sort

Collections 클래스의 정렬 기능은 Comparator를 지정하여 컬렉션을 정렬할 수 있습니다. Comparator는 일반적으로 컬렉션의 요소 순서를 지정하는 데 사용되는 인터페이스입니다. 다음은 Collections.sort 함수를 사용한 정렬의 예입니다.

List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(3);
numbers.add(2);
numbers.add(4);

Collections.sort(numbers);

for (Integer num : numbers) {
    System.out.print(num + " ");
}

위 코드는 1 2 3 4를 출력합니다. 내림차순으로 정렬하려면 다음과 같이 비교기를 전달할 수 있습니다.

Collections.sort(numbers, new Comparator<Integer>() {
    public int compare(Integer o1, Integer o2) {
        return o2 - o1;
    }
});

그러므로 결과를 내림차순으로 얻을 수 있습니다: 4 3 2 1.

  1. Find elements

Collections 클래스는 일반적으로 사용되는 검색 기능을 제공합니다. 다음은 일반적으로 사용되는 검색 기능과 사용법입니다.

  • binarySearch(목록 목록, 개체 키): 이진 검색 알고리즘을 사용하여 정렬된 목록에서 지정된 요소를 찾습니다.
  • max(Collection coll): 컬렉션에서 가장 큰 요소를 반환합니다.
  • min(Collection coll): 컬렉션에서 가장 작은 요소를 반환합니다.

다음은 BinarySearch 기능을 사용하여 검색하는 예입니다.

List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Carol");
names.add("David");

int index = Collections.binarySearch(names, "Carol");
System.out.println("Index of Carol: " + index);

이렇게 하면 "Index of Carol: 2"가 출력됩니다.

  1. Replace elements

Collections 클래스에는 컬렉션의 요소를 교체하는 데 사용할 수 있는 교체 기능이 있습니다. 다음은 바꾸기 함수를 사용하여 바꾸는 예입니다.

List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Carol");
names.add("David");

Collections.replaceAll(names, "Bob", "Beth");

for (String name : names) {
    System.out.print(name + " ");
}

이렇게 하면 "Alice Beth Carol David"가 출력됩니다.

  1. 컬렉션 복사

컬렉션 클래스의 복사 기능은 한 컬렉션의 요소를 다른 컬렉션으로 복사할 수 있습니다. 두 컬렉션의 크기가 동일해야 합니다. 다음은 복사 기능을 사용하여 복사하는 예입니다.

List<String> names1 = new ArrayList<>();
names1.add("Alice");
names1.add("Bob");
names1.add("Carol");
names1.add("David");

List<String> names2 = new ArrayList<>(names1.size());

Collections.copy(names2, names1);

for (String name : names2) {
    System.out.print(name + " ");
}

이렇게 하면 "Alice Bob Carol David"가 출력됩니다.

  1. 불변 컬렉션

불변 컬렉션을 생성해야 하는 경우 컬렉션 클래스의 unmodifyingList, unmodifyingSet, unmodifyingMap 함수를 사용하여 생성할 수 있습니다. 이러한 함수는 래핑된 컬렉션을 반환하며 요소 수정을 허용하지 않습니다. 다음은 변경 불가능한 컬렉션을 생성하기 위해 unmodifyingList 함수를 사용하는 예입니다.

List<String> names = new ArrayList<>();
names.add("Alice");
names.add("Bob");
names.add("Carol");
names.add("David");

List<String> immutableNames = Collections.unmodifiableList(names);

System.out.print("Immutable names: ");
for (String name : immutableNames) {
    System.out.print(name + " ");
}

try {
    immutableNames.add("Eve");
} catch (UnsupportedOperationException e) {
    System.out.println("
Failed to add Eve to immutableNames");
}

이렇게 하면 "Immutable names: Alice Bob Carol David"가 출력되고 Eve를 추가하려고 하면 UnsupportedOperationException이 발생합니다.

Collections 클래스에서 제공되는 이러한 기능을 사용하여 Java 개발자는 컬렉션에 대한 일반적인 작업을 쉽게 수행할 수 있습니다. 다른 컬렉션 작업을 수행해야 하는 경우 Java API 설명서에서 컬렉션 클래스를 확인할 수 있습니다.

위 내용은 Java에서 컬렉션 작업에 컬렉션 기능을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.