Java-ohjelma sen tarkistamiseksi, onko taulukossa annettu arvo

Tässä ohjelmassa opit tarkistamaan, sisältääkö matriisi tietyn arvon Java-muodossa.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:

  • Java-taulukot
  • Java-tietotyypit (primitiivinen)

Esimerkki 1: Tarkista, sisältääkö Int Array tietyn arvon

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

Tuotos

 3 löytyy.

Yllä olevassa ohjelmassa meillä on joukko kokonaislukuja, jotka on tallennettu muuttujaan num. Samoin löydettävä numero tallennetaan ToFindiin.

Nyt käytämme jokaiselle silmukalle iteroimaan kaikkien num-elementtien läpi ja tarkistamme erikseen, onko toFind yhtä suuri kuin n.

Jos kyllä, asetimme löydetyn trueja katkaistiin silmukasta. Jos ei, siirrymme seuraavaan iteraatioon.

Esimerkki 2: Tarkista Streamin avulla, onko taulukossa annettu arvo

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

Tuotos

 7 ei löydy.

Yllä olevassa ohjelmassa muunnetaan taulukko kullekin silmukalle sen sijaan, IntStreamettä käytämme sen anyMatch()menetelmää.

anyMatch()menetelmä ottaa predikaatin, lausekkeen tai funktion, joka palauttaa loogisen arvon. Meidän tapauksessamme predikaatti vertaa jokaista elementtiä n streamissa etsimiseen ja palauttaa truetai false.

Jos jokin elementistä n palaa true, löydetty on myös asetettu true.

Esimerkki 3: Tarkista, sisältääkö taulukko tietyn arvon ei-primitiivisille tyypeille

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

Tuotos

 Neljä löytyy.

Edellä mainittuun ohjelmaan, olemme käyttäneet ei-primitiivinen tietotyyppi Stringja käytetään Arraysn stream()menetelmää ensin muuntaa sen virta ja anyMatch()tarkistaa, onko jono sisältää tietyn arvon tofind.

Mielenkiintoisia artikkeleita...