Котлин програм за проверу да ли низ садржи дату вредност

У овом програму ћете научити да проверите да ли низ садржи задату вредност у Котлину.

Пример 1: Проверите да ли Инт Арраи садржи задату вредност

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

Када покренете програм, излаз ће бити:

 3 је пронађен.

У горе наведеном програму имамо низ целих бројева сачуваних у променљивој нум. Слично томе, број који се налази је ускладиштен у тоФинд.

Сада користимо for-inпетљу да прелиставамо све елементе нум и појединачно проверимо да ли је тоФинд н или није.

Ако је одговор да, поставили смо пронађено trueи прекидали се из петље. Ако не, прелазимо на следећу итерацију.

Пример 2: Проверите да ли низ садржи задату вредност користећи Стреам

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

Када покренете програм, излаз ће бити:

 7 није пронађен.

У горњем програму, уместо да користимо фореацх петљу, ми претварамо низ у ан IntStreamи користимо његову anyMatch()методу.

anyMatch()метода узима предикат, израз или функцију која враћа логичку вредност. У нашем случају, предикат упоређује сваки елемент н у току са тоФинд и враћа trueили false.

Ако се врати било који од елемената н true, постављено је и на пронађено true.

Пример 3: Проверите да ли низ садржи дату вредност за непримитивне типове

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

Када покренете програм, излаз ће бити:

 Четири су пронађене.

У наведеном програму, ми смо користили не примитивног типа података Stringи користи Arraysstream()метода на прву га претворити у струји и anyMatch()да се провери да ли низ садржи дати вредности тоФинд.

Ево еквивалентног Јава кода: Јава програм за проверу да ли низ садржи дату вредност.

Занимљиви Чланци...