Kontrol af, om et Java-array indeholder en værdi

Kontrol Af Om Et Java Array Indeholder En Vaerdi



Et Java-array bruges til at gemme flere numeriske værdier eller strengværdier i en variabel. Der findes mange muligheder i Java for at søge efter en bestemt værdi i et array. Brug af 'for'-løkken er den enkleste måde at søge efter en numerisk eller strengværdi i Java-arrayet. Der findes dog mange indbyggede funktioner i Java til at søge efter en bestemt værdi i et array. Metoderne til at kontrollere, om en bestemt værdi findes i et Java-array eller ej, ved hjælp af en loop og Java-indbyggede funktioner, er vist i denne øvelse.

Eksempel 1: Brug af en 'For'-løkke

Opret en Java-fil med følgende kode, der tager et input fra brugeren, og kontroller, om inputværdien findes i arrayet eller ej ved at bruge 'for'-løkken. En matrix af strengværdier er defineret i koden. En strengværdi tages fra brugeren ved hjælp af klassen 'Scanner'. Derefter sammenlignes dette med hver værdi af arrayet. Hvis der findes et match, stoppes gentagelsen af ​​løkken, og en succesmeddelelse udskrives.







// Importer scannermodulet
import java.util.Scanner;
offentlig klasse CheckArrayValue1 {
offentlig statisk tomrum hoved ( Snor [ ] args ) {

// Erklære en matrix af strengværdier
Snor [ ] strArray = { 'Java' , 'C++' , 'C#' , 'VB.NET' , 'J#' } ;

// Erklære et scannerobjekt
@ Undertryk Advarsler ( 'ressource' )
Scanner lang = ny scanner ( System.in ) ;
System.out.println ( 'Indtast et programmeringssprognavn: ' ) ;

// Få input fra brugeren
Strengnavn = lang.nextLine ( ) ;

// Indstil variablen til falsk
Boolesk fundet = falsk ;

// Gentag løkken for at kontrollere hver værdi af løkken
til ( int i = 0 ; jeg < strArray.length; i++ ) {
// Sammenlign hver værdi af arrayet med inputværdien
hvis ( navn.lig med ( strArray [ jeg ] ) )
{
// Udskriv succesmeddelelsen
System.out.println ( 'Det '' + navn + '' findes i arrayet.' ) ;
// Indstil variablen til rigtigt
fundet = rigtigt ;
pause ;
}
}

// Kontroller variablen for at udskrive fejlmeddelelsen
hvis ( ! fundet )
System.out.println ( 'Det '' + navn + '' findes ikke i arrayet.' ) ;
}
}


Produktion:



Følgende output udskrives, hvis Java tages som den inputværdi, der findes i matrixværdierne:




Følgende output udskrives, hvis Perl tages som inputværdi, der ikke findes i matrixværdierne:





Eksempel 2: Brug af Contains()-metoden

Opret en Java-fil med følgende kode, der tager et input fra brugeren, og kontroller, om inputværdien findes i arrayet eller ej, ved hjælp af contains()-metoden. Denne metode returnerer sand, hvis inputværdien findes i arrayet. Ellers returnerer denne metode falsk.



// Importer de nødvendige moduler
import java.util.Scanner;
importer java.util.Arrays;
offentlig klasse CheckArrayValue2 {
offentlig statisk tomrum hoved ( Snor [ ] args ) {

// Deklarer en matrix af strengværdier
Snor [ ] strArray = { 'Java' , 'C++' , 'C#' , 'VB.NET' , 'J#' } ;

// Erklære et scannerobjekt
@ Undertryk Advarsler ( 'ressource' )

Scanner input = ny scanner ( System.in ) ;
System.out.println ( 'Indtast et programmeringssprognavn: ' ) ;

// Få input fra brugeren
Strengnavn = input.nextLine ( ) ;

// Tjek om værdien eksisterer i arrayet eller ej ved at bruge indeholder ( ) metode
boolean fundet = Arrays.asList ( strArray ) .indeholder ( navn ) ;

// Indstil startværdien i outputvariablen
Streng output = 'Det ' + navn;
// Indstil beskeden til outputvariablen baseret på den fundne variabel
output += fundet? ' findes i arrayet.' : ' findes ikke i arrayet.' ;
// Udskriv output
System.out.println ( produktion ) ;
}
}


Produktion:

Følgende output udskrives, hvis PHP tages som inputværdi, der ikke findes i matrixværdierne:


Følgende output udskrives, hvis C++ tages som inputværdien, der findes i matrixværdierne:

Eksempel 3: Brug af AnyMatch()-metoden

Opret en Java-fil med følgende kode, der tager et input fra brugeren, og kontroller, om inputværdien findes i arrayet eller ej ved at bruge anyMatch()-metoden i klassen 'Stream'. Denne metode returnerer sand, hvis inputværdien findes i arrayet. Ellers returnerer denne metode falsk.

// Importer de nødvendige moduler
import java.util.Scanner;
importer java.util.stream.IntStream;
offentlig klasse CheckArrayValue3
{
offentlig statisk tomrum hoved ( Snor [ ] args )
{

// Deklarer en række af tal
int [ ] numArray = { 89 , Fire, fem , 72 , 67 , 12 , 43 } ;

// Erklære et scannerobjekt
@ Undertryk Advarsler ( 'ressource' )

Scannerinput = ny scanner ( System.in ) ;
System.out.println ( 'Indtast et nummer for at søge: ' ) ;

// Få input fra brugeren
int num = input.nextInt ( ) ;

// Tjek om værdien eksisterer i arrayet eller ej ved at bruge anyMatch ( ) metode
boolean fundet = IntStream.of ( numArray ) .anyMatch ( x - > x == nej ) ;

// Indstil startværdien i outputvariablen
Streng output = 'Det ' + antal;
// Indstil beskeden til outputvariablen baseret på den fundne variabel
output += fundet? ' findes i arrayet.' : ' findes ikke i arrayet.' ;
// Udskriv output
System.out.println ( produktion ) ;
}
}


Produktion:

Følgende output udskrives, hvis 45 tages som den inputværdi, der findes i matrixværdierne:


Følgende output udskrives, hvis 100 tages som inputværdi, der ikke findes i matrixværdierne:

Konklusion

Tre forskellige måder at kontrollere, om arrayet indeholder en bestemt værdi eller ej, er vist i denne vejledning ved hjælp af flere eksempler.