Chương trình Kotlin để kiểm tra xem một mảng có chứa một giá trị nhất định hay không

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 Kotlin hay không.

Ví dụ 1: Kiểm tra xem Int Array có chứa giá trị nhất định không

 fun main(args: Array) ( val num = intArrayOf(1, 2, 3, 4, 5) val toFind = 3 var found = false for (n in num) ( if (n == toFind) ( found = true break ) ) if (found) println("$toFind is found.") else println("$toFind is not found.") )

Khi bạn chạy chương trình, đầu ra sẽ là:

 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 một for-invòng lặp để 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 truevà 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ả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 fun main(args: Array) ( val num = intArrayOf(1, 2, 3, 4, 5) val toFind = 7 val found = IntStream.of(*num).anyMatch ( n -> n == toFind ) if (found) println("$toFind is found.") else println("$toFind is not found.") )

Khi bạn chạy chương trình, đầu ra sẽ là:

 7 không được tìm thấy.

Trong chương trình trên, thay vì sử dụng vòng lặp foreach, chúng ta chuyển đổi mảng thành an IntStreamvà 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ề truehoặ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ả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 fun main(args: Array) ( val strings = arrayOf("One", "Two", "Three", "Four", "Five") val toFind = "Four" val found = Arrays.stream(strings).anyMatch ( t -> t == toFind ) if (found) println("$toFind is found.") else println("$toFind is not found.") )

Khi bạn chạy chương trình, đầu ra sẽ là:

 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 Stringvà sử dụng Arrayscủ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.

Đây là mã Java tương đương: Chương trình Java để kiểm tra xem mảng có chứa một giá trị nhất định hay không.

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