Trong chương trình này, bạn sẽ học cách kiểm tra xem một mảng có chứa một giá trị nhất định trong Java hay không.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình Java sau:
- Mảng Java
- Các kiểu dữ liệu Java (Nguyên thủy)
Ví dụ 1: Kiểm tra xem Int Array có chứa giá trị nhất định không
public class Contains ( public static void main(String() args) ( int() num = (1, 2, 3, 4, 5); int toFind = 3; boolean found = false; for (int n : num) ( if (n == toFind) ( found = true; break; ) ) if(found) System.out.println(toFind + " is found."); else System.out.println(toFind + " is not found."); ) )
Đầu ra
3 được tìm thấy.
Trong chương trình trên, chúng ta có một mảng các số nguyên được lưu trữ trong biến num. Tương tự như vậy, số được tìm thấy được lưu trữ trong toFind.
Bây giờ, chúng ta sử dụng vòng lặp for-each để lặp qua tất cả các phần tử của num và kiểm tra từng phần tử xem toFind có bằng n hay không.
Nếu có, chúng tôi đặt tìm thấy true
và phá vỡ khỏi vòng lặp. Nếu không, chúng ta chuyển sang lần lặp tiếp theo.
Ví dụ 2: Kiểm tra xem một mảng có chứa giá trị nhất định hay không bằng cách sử dụng Luồng
import java.util.stream.IntStream; public class Contains ( public static void main(String() args) ( int() num = (1, 2, 3, 4, 5); int toFind = 7; boolean found = IntStream.of(num).anyMatch(n -> n == toFind); if(found) System.out.println(toFind + " is found."); else System.out.println(toFind + " is not found."); ) )
Đầu ra
7 không được tìm thấy.
Trong chương trình trên, thay vì sử dụng vòng lặp for-each, chúng ta chuyển đổi mảng thành an IntStream
và sử dụng anyMatch()
phương thức của nó .
anyMatch()
phương thức nhận một vị từ, một biểu thức hoặc một hàm trả về một giá trị boolean. Trong trường hợp của chúng ta, vị từ so sánh mỗi phần tử n trong luồng với toFind và trả về true
hoặc false
.
Nếu bất kỳ phần tử n nào trả về true
, thì tìm thấy cũng được đặt thành true
.
Ví dụ 3: Kiểm tra xem một mảng có chứa giá trị nhất định cho các kiểu không nguyên thủy hay không
import java.util.Arrays; public class Contains ( public static void main(String() args) ( String() strings = ("One", "Two", "Three", "Four", "Five"); String toFind = "Four"; boolean found = Arrays.stream(strings).anyMatch(t -> t.equals(toFind)); if(found) System.out.println(toFind + " is found."); else System.out.println(toFind + " is not found."); ) )
Đầu ra
Bốn được tìm thấy.
Trong chương trình trên, chúng tôi đã sử dụng một kiểu dữ liệu phi nguyên thủy String
và sử dụng Arrays
của stream()
phương pháp để chuyển đổi đầu tiên nó đến một dòng suối và anyMatch()
để kiểm tra xem mảng chứa toFind giá trị nhất định.