Home  >  Article  >  Java  >  How to use Collections function for collection operations in Java

How to use Collections function for collection operations in Java

WBOY
WBOYOriginal
2023-06-26 15:47:041141browse

The Collections class in Java provides a set of commonly used algorithms for operating on collections. By using these functions, Java developers can easily sort, search, replace, copy and other operations on collections. This article will introduce some commonly used Collections functions to help readers understand how to use Collections functions to perform collection operations in Java.

  1. Sort

The sort function in the Collections class can sort the collection by specifying a Comparator. Comparator is an interface that is usually used to specify the ordering of elements in a collection. The following is an example of sorting using the Collections.sort function:

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 + " ");
}

The above code will output: 1 2 3 4. If we want to sort in descending order, we can pass in the Comparator as follows:

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

So that we can get the result in descending order: 4 3 2 1.

  1. Find elements

The Collections class provides some commonly used search functions. The following are some commonly used search functions and their usage:

  • binarySearch(List list, Object key): Use the binary search algorithm to find the specified element in the ordered list.
  • max(Collection coll): Returns the largest element in the collection.
  • min(Collection coll): Returns the smallest element in the collection.

The following is an example of searching using the binarySearch function:

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);

This will output: "Index of Carol: 2".

  1. Replace elements

There is a replace function in the Collections class, which can be used to replace elements in the collection. Here is an example of replacing using the replace function:

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 + " ");
}

This will output: "Alice Beth Carol David".

  1. Copy Collection

The copy function in the Collections class can copy elements in one collection to another collection. Note that both collections must be equal in size. Here is an example of copying using the copy function:

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 + " ");
}

This will output: "Alice Bob Carol David".

  1. Immutable collection

If you need to create an immutable collection, you can use the unmodifiableList, unmodifiableSet, and unmodifiableMap functions in the Collections class to create it. These functions return a wrapped collection and do not allow modification of the elements. Here is an example of using the unmodifiableList function to create an immutable collection:

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");
}

This will output: "Immutable names: Alice Bob Carol David" and will throw an UnsupportedOperationException when trying to add Eve.

By using these functions provided in the Collections class, Java developers can easily perform common operations on collections. If you need to perform other collection operations, you can check out the Collections class in the Java API documentation.

The above is the detailed content of How to use Collections function for collection operations in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn