Dalam program ini, Anda akan belajar untuk memeriksa apakah sebuah array berisi nilai tertentu di Kotlin.
Contoh 1: Periksa apakah Int Array berisi nilai yang diberikan
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.") )
Saat Anda menjalankan program, hasilnya adalah:
3 ditemukan.
Dalam program di atas, kami memiliki array bilangan bulat yang disimpan dalam variabel num. Demikian juga, nomor yang akan ditemukan disimpan di toFind.
Sekarang, kita menggunakan for-in
perulangan untuk mengulang melalui semua elemen num dan memeriksa secara individual apakah toFind sama dengan n atau tidak.
Jika ya, kami menetapkan ditemukan ke true
dan keluar dari perulangan. Jika tidak, kami pindah ke iterasi berikutnya.
Contoh 2: Periksa apakah array berisi nilai yang diberikan menggunakan Stream
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.") )
Saat Anda menjalankan program, hasilnya adalah:
7 tidak ditemukan.
Dalam program di atas, alih-alih menggunakan foreach loop, kami mengonversi array ke an IntStream
dan menggunakan anyMatch()
metodenya.
anyMatch()
metode mengambil predikat, ekspresi atau fungsi yang mengembalikan nilai boolean. Dalam kasus kami, predikat membandingkan setiap elemen n dalam aliran ke toFind dan mengembalikan true
atau false
.
Jika salah satu elemen n kembali true
, ditemukan diatur ke true
juga.
Contoh 3: Periksa apakah array berisi nilai yang diberikan untuk tipe non-primitif
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.") )
Saat Anda menjalankan program, hasilnya adalah:
Empat ditemukan.
Dalam program di atas, kita telah menggunakan tipe data non-primitif String
dan digunakan Arrays
's stream()
metode untuk mengkonversi pertama ke sungai dan anyMatch()
untuk memeriksa apakah array berisi nilai tofind yang diberikan.
Berikut kode Java yang setara: Program Java untuk memeriksa apakah array berisi nilai yang diberikan.