Kotlinov program za preverjanje, ali matrika vsebuje dano vrednost

V tem programu se boste naučili preverjati, ali matrika vsebuje določeno vrednost v Kotlinu.

Primer 1: Preverite, ali Int Array vsebuje dano vrednost

 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.") )

Ko zaženete program, bo rezultat:

 3 najdena.

V zgornjem programu imamo nabor celih števil, shranjenih v spremenljivki num. Številka, ki jo najdemo, je shranjena v mapi Find.

Zdaj uporabljamo for-inzanko za iteracijo skozi vse elemente števila in posamezno preverimo, ali je toFind enak n ali ne.

Če je odgovor pritrdilen, smo nastavili truezanko in prelomili zanko. Če ne, se premaknemo na naslednjo ponovitev.

Primer 2: Preverite, ali matrika vsebuje dano vrednost, s pomočjo 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.") )

Ko zaženete program, bo rezultat:

 7 ni mogoče najti.

V zgornjem programu namesto da uporabimo zanko foreach, pretvorimo polje v an IntStreamin uporabimo njegovo anyMatch()metodo.

anyMatch()metoda vzame predikat, izraz ali funkcijo, ki vrne logično vrednost. V našem primeru predikat primerja vsak element n v toku s toFind in vrne trueoz false.

Če se vrne kateri koli od elementov n true, je tudi najdeno nastavljeno na true.

Primer 3: Preverite, ali matrika vsebuje dano vrednost za ne-primitivne vrste

 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.") )

Ko zaženete program, bo rezultat:

 Štiri najdemo.

V zgornjem programu smo uporabili neprimitivni podatkovni tip Stringin uporabili metodo Arrays's, stream()da smo jih najprej pretvorili v tok in anyMatch()preverili, ali matrika vsebuje določeno vrednost toFind.

Tu je enakovredna koda Java: program Java za preverjanje, ali matrika vsebuje določeno vrednost.

Zanimive Članki...