Quy trình lọc danh sách trong Java là gì

Quy Trinh Loc Danh Sach Trong Java La Gi



Lọc danh sách ” trong Java rất hữu ích cho các nhà phát triển, những người chủ yếu làm việc với dữ liệu. Nó có hiệu lực trong khi cập nhật các chức năng của mã, xóa các bản ghi hoặc sử dụng dữ liệu chứa trong một danh sách riêng. Trong các tình huống như vậy, phương pháp lọc danh sách hỗ trợ quản lý cả thời gian và bộ nhớ một cách hiệu quả ở cuối nhà phát triển.

Blog này sẽ hướng dẫn lọc một danh sách Java.







Quy trình lọc danh sách Java là gì?

Một danh sách trong Java có thể được lọc bằng cách sử dụng các phương pháp sau:



Nhập gói được cung cấp bên dưới vào tất cả các ví dụ của blog này để truy cập tất cả các chức năng trong “ java.util ' bưu kiện:



nhập khẩu java.util.* ;

Cách tiếp cận 1: Lọc danh sách trong Java bằng vòng lặp “for”

Cách tiếp cận này áp dụng “ ” lặp lại “Danh sách” đã tạo sao cho một “mới Lập danh sách ” được thêm vào (các) mục đã lọc.





Ví dụ

Tổng quan về các dòng mã được nêu dưới đây:

công cộng lớp học danh sách lọc {
công cộng tĩnh khoảng trống chủ yếu ( Sợi dây [ ] tranh luận ) {
Danh sách < Sợi dây > danh sách đã cho = Mảng . asList ( 'Cái bút' , 'Cục tẩy' , 'Gọt chì' ) ;
Hệ thống . ngoài . bản in ( 'Danh sách đã cho ->' + danh sách đã cho ) ;
Danh sách < Sợi dây > danh sáchFilter = mới Lập danh sách <> ( ) ;
( Sợi dây mục : danh sách đã cho ) {
nếu như ( mục. bắt đầu với ( 'VÀ' ) ) {
listFilter. thêm vào ( mục ) ;
} }
Hệ thống . ngoài . bản in ( 'Danh sách đã lọc ->' + danh sáchFilter ) ;
} }

Theo khối mã này:



  • Tạo danh sách “ Sợi dây ” kiểu dữ liệu có các giá trị chuỗi đã nêu và hiển thị nó.
  • Sau đó, tạo một “ Lập danh sách ” đặt tên “ danh sáchFilter ” để nối nó với các mục được lọc từ danh sách cũ.
  • Bây giờ, hãy áp dụng “ ” để lặp lại dọc theo danh sách đầu tiên đã xác định và lọc nó dựa trên điều kiện được áp dụng, tức là (các) mục bắt đầu bằng ký tự “ ”.
  • Khi điều kiện được thỏa mãn, danh sách đã lọc sẽ được nối với chuỗi cụ thể.

đầu ra

Như đã thấy, danh sách đã lọc được thêm vào chuỗi đáp ứng điều kiện đã áp dụng.

Cách tiếp cận 2: Lọc một danh sách trong Java bằng cách sử dụng vòng lặp “while”

Trong cách tiếp cận này, “ trong khi ” vòng lặp có thể được thực hiện cùng với “ Trình lặp ” và các phương thức của nó để lọc danh sách được cung cấp. Những phương pháp này bao gồm “ hasNext()” và “next() ” các phương thức gọi giá trị tiếp theo từ danh sách nếu có.

cú pháp

boolean hasNext ( )

Phương thức này trả về một kết quả boolean tức là, 'đúng hay sai' .

công cộng tiếp theo ( )

Đây, ' MỘT ' Tương ứng với ' Giao diện trình lặp ”.

Ví dụ

Bây giờ, tiến hành đoạn mã sau:

công cộng lớp học danh sách lọc {
công cộng tĩnh khoảng trống chủ yếu ( Sợi dây [ ] tranh luận ) {
Danh sách < Sợi dây > danh sách đã cho = mới Lập danh sách <> (
Mảng . asList ( 'Java' , 'lập trình' , 'TRONG' , 'Linux' ) ) ;
Hệ thống . ngoài . bản in ( 'Danh sách đã cho ->' + danh sách đã cho ) ;
Trình lặp < Sợi dây > sự lặp đi lặp lại = danh sách đã cho. trình vòng lặp ( ) ;
trong khi ( phép lặp. hasNext ( ) ) {
Sợi dây dòng chảy = phép lặp. Kế tiếp ( ) ;
nếu như ( dòng chảy bắt đầu với ( 'P' ) ) {
phép lặp. di dời ( ) ;
} }
Hệ thống . ngoài . bản in ( 'Danh sách đã lọc ->' + danh sách đã cho ) ;
} }

Theo mã trên:

  • Tạo ra một ' Lập danh sách ' sau đó ' Sợi dây ” gõ có các giá trị được cung cấp và hiển thị nó.
  • Bây giờ, lặp qua các phần tử danh sách thông qua “ Trình lặp ' lớp học.
  • Ngoài ra, hãy áp dụng “ trong khi ” vòng lặp để kiểm tra xem có phần tử tiếp theo trong danh sách thông qua lệnh “ hasNext() ” và truy xuất nó dựa trên “ đã áp dụng Kế tiếp() ' phương pháp.
  • Bây giờ, hãy kiểm tra xem phần tử lặp trong danh sách có thỏa mãn điều kiện đã nêu hay không, như đã thảo luận trong ví dụ trước.
  • Khi điều kiện được thỏa mãn, thay vào đó, phần tử cụ thể đó sẽ bị xóa và danh sách được lọc.

đầu ra

Như đã phân tích, phần tử đáp ứng điều kiện đã chỉ định sẽ bị xóa khỏi danh sách một cách thích hợp.

Bao gồm gói bổ sung được cung cấp bên dưới trong phương pháp tiếp theo để cho phép làm việc với “ nhà sưu tập ' lớp học:

nhập khẩu java.util.stream.Colectors ;

Cách tiếp cận 3: Lọc một danh sách trong Java bằng phương thức “filter()”

Các 'lọc()' phương thức được sử dụng để lọc các phần tử luồng dựa trên vị từ đã cho. Phương pháp này có thể được sử dụng để lọc một luồng danh sách.

cú pháp

Suối < X > lọc ( Thuộc tính siêu X > trước )

Trong cú pháp này, “ trước ' Tương ứng với ' Thuộc tính ” có thể lấy biểu thức lambda làm đối số.

Ví dụ

Hãy xem xét đoạn mã sau:

công cộng lớp học danh sách lọc2 {
công cộng tĩnh khoảng trống chủ yếu ( Sợi dây [ ] tranh luận ) {
Danh sách < Sợi dây > danh sách đã cho = Mảng . asList ( 'Di động' , 'Máy tính xách tay' , 'MÁY TÍNH' ) ;
Hệ thống . ngoài . bản in ( 'Danh sách đã cho ->' + danh sách đã cho ) ;
Sợi dây danh sáchFilter = danh sách đã cho. suối ( ) . lọc ( mục -> mục. bắt đầu với ( 'M' ) )
. sưu tầm ( Nhà sưu tập. tham gia ( ', ' , '[' , ']' ) ) ;
Hệ thống . ngoài . bản in ( 'Danh sách đã lọc ->' + danh sáchFilter ) ;
} }

Trong các dòng mã này:

  • Tương tự như vậy, tạo một “ Danh sách ” và hiển thị các giá trị của nó.
  • Sau đó, sử dụng “ lọc() ” để lọc các phần tử luồng trong danh sách dựa trên điều kiện đã thảo luận và chỉ định các quy ước để chứa các mục được lọc thông qua “ nhà sưu tập ” lớp, tương ứng.
  • Cuối cùng, trả lại danh sách đã lọc.

đầu ra

Trong kết quả này, có thể ngụ ý rằng một danh sách mới được thêm vào với giá trị thỏa mãn điều kiện đã nêu.

Phần kết luận

Một danh sách trong Java có thể được lọc bằng cách sử dụng “ vòng lặp for”, vòng lặp “while” hoặc “filter() ' phương pháp. Tất cả các cách tiếp cận này trực tiếp lọc một danh sách dựa trên một điều kiện cụ thể hoặc thông qua biểu thức lambda. Bài viết này đã trình bày các cách tiếp cận để lọc danh sách Java.