„Java“ programa, skirta patikrinti, ar masyvas turi nurodytą vertę

Šioje programoje išmoksite patikrinti, ar masyve yra nurodyta „Java“ reikšmė.

Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:

  • „Java“ masyvai
  • „Java“ duomenų tipai (primityvūs)

1 pavyzdys: Patikrinkite, ar „Int Array“ yra nurodyta reikšmė

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

Rezultatas

 3 yra rasta.

Pirmiau pateiktoje programoje turime sveikų skaičių masyvą, saugomą kintamajame num. Panašiai skaičius, kurį reikia rasti, saugomas toFind.

Dabar mes naudojame kiekvienai kilpai kartoti visus numerio elementus ir atskirai patikrinti, ar toFind yra lygus n, ar ne.

Jei taip, mes nustatėme trueir nutraukėme kilpą. Jei ne, pereiname prie kitos kartojimo.

2 pavyzdys: naudodami srautą patikrinkite, ar masyve yra nurodyta vertė

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

Rezultatas

 7 nerasta.

Pirmiau pateiktoje programoje, užuot naudoję kiekvienai kilpai, mes konvertuojame masyvą į IntStreamir naudojame jo anyMatch()metodą.

anyMatch()metodas paima predikatą, išraišką ar funkciją, kuri grąžina loginę vertę. Mūsų atveju predikatas kiekvieną srauto elementą n palygina su toFind ir grąžina truearba false.

Jei grįš kuris nors iš elemento n true, truetaip pat bus nustatyta rasta .

3 pavyzdys: Patikrinkite, ar masyve yra nurodyta neprimityvių tipų vertė

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

Rezultatas

 Rasta keturi.

Pirmiau programą, mes naudojamas ne primityvų duomenų tipą Stringir naudoti Arrays"S stream()metodą pirmą konvertuoti jį į upelį ir anyMatch()patikrinti, ar masyvas yra suteikiama vertė tofind.

Įdomios straipsniai...