Java ArrayList keepAll ()

Phương thức Java ArrayList keepAll () chỉ giữ lại những phần tử trong danh sách mảng cũng có trong bộ sưu tập được chỉ định.

Và, tất cả các phần tử không có trong bộ sưu tập được chỉ định sẽ bị xóa khỏi danh sách mảng.

Cú pháp của retainAll()phương thức là:

 arraylist.retainAll(Collection c);

Ở đây, arraylist là một đối tượng của ArrayListlớp.

Các tham số giữ lại ()

Các retainAll()phương pháp có một tham số duy nhất.

  • bộ sưu tập - chỉ những phần tử có trong bộ sưu tập được giữ lại trong danh sách mảng.

Giữ lạiAll () Giá trị trả lại

  • trả về truenếu các phần tử bị xóa khỏi danh sách mảng
  • ném ClassCastExceptionnếu lớp phần tử có trong danh sách mảng không tương thích với lớp phần tử trong tập hợp được chỉ định
  • ném NullPointerExceptionnếu danh sách mảng chứa phần tử rỗng và bộ sưu tập được chỉ định không cho phép phần tử rỗng

Ví dụ 1: Java ArrayList keepAll ()

 import java.util.ArrayList; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList languages1 = new ArrayList(); // insert element to the ArrayList languages1.add("JavaScript"); languages1.add("Python"); languages1.add("Java"); System.out.println("ArrayList 1: " + languages1); // create another ArrayList ArrayList languages2 = new ArrayList(); // add elements to ArrayList languages2.add("English"); languages2.add("Java"); languages2.add("Python"); System.out.println("ArrayList 2: " + languages2); // retain the common element languages1.retainAll(languages2); System.out.println("Common Elements: " + languages1); ) )

Đầu ra

 ArrayList 1: (JavaScript, Python, Java) ArrayList 2: (English, Java, Python) Các phần tử chung: (Python, Java)

Trong ví dụ trên, chúng ta đã tạo hai danh sách mảng có tên là ngôn ngữ 1 và ngôn ngữ 2. Lưu ý dòng,

 languages1.retainAll(languages2);

Ở đây, chúng tôi đang chuyển các ngôn ngữ danh sách mảng2 làm đối số cho retainAll()phương thức. Phương thức loại bỏ tất cả các phần tử khỏi các ngôn ngữ1 không có trong các ngôn ngữ2. Do đó, chỉ các yếu tố chung được giữ lại.

Ví dụ 2: Hiển thị các phần tử chung giữa ArrayList và HashSet

 import java.util.ArrayList; import java.util.HashSet; class Main ( public static void main(String() args) ( // create an ArrayList ArrayList numbers = new ArrayList(); // add element to ArrayList numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("ArrayList: " + numbers); // create a HashSet HashSet primeNumbers = new HashSet(); // add elements to HashSet primeNumbers.add(2); primeNumbers.add(3); primeNumbers.add(5); System.out.println("HashSet: " + primeNumbers); // retain common elements in the ArrayList numbers.retainAll(primeNumbers); System.out.println("Common Elements: " + numbers); ) )

Đầu ra

 ArrayList: (1, 2, 3) HashSet: (2, 3, 5) Phần tử chung: (2, 3)

Trong ví dụ trên, chúng ta đã tạo một danh sách mảng có tên là các số và một bộ băm có tên là số nguyên tố. Lưu ý dòng,

 numbers.retainAll(primeNumbers);

Ở đây, retainAll()phương pháp loại bỏ tất cả các phần tử đó khỏi các số không có trong số nguyên tố. Và, chỉ giữ lại các yếu tố chung. Do đó, 23 được giữ lại trong số của danh sách mảng.

thú vị bài viết...