Kontrola, zda pole Java obsahuje hodnotu

Kontrola Zda Pole Java Obsahuje Hodnotu



Pole Java se používá k ukládání více číselných hodnot nebo řetězcových hodnot do proměnné. V Javě existuje mnoho možností pro hledání konkrétní hodnoty v poli. Použití cyklu „for“ je nejjednodušší způsob, jak hledat číselnou nebo řetězcovou hodnotu v poli Java. V Javě však existuje mnoho vestavěných funkcí pro hledání konkrétní hodnoty v poli. Metody kontroly, zda určitá hodnota existuje v poli Java nebo ne, pomocí smyčky a vestavěných funkcí Java jsou uvedeny v tomto tutoriálu.

Příklad 1: Použití smyčky „Pro“.

Vytvořte soubor Java s následujícím kódem, který převezme vstup od uživatele, a pomocí smyčky „for“ zkontrolujte, zda vstupní hodnota v poli existuje nebo ne. V kódu je definováno pole řetězcových hodnot. Řetězcová hodnota je převzata od uživatele pomocí třídy „Scanner“. Poté se porovná s každou hodnotou pole. Pokud je nalezena jakákoliv shoda, iterace smyčky se zastaví a vytiskne se zpráva o úspěchu.







// Importujte modul skeneru
import java.util.Scanner;
veřejná třída CheckArrayValue1 {
public static void main ( Tětiva [ ] argumenty ) {

// Deklarujte pole řetězcových hodnot
Tětiva [ ] strArray = { 'Jáva' , 'C++' , 'C#' , 'VB.NET' , 'J#' } ;

// Deklarujte objekt skeneru
@ SuppressWarnings ( 'zdroj' )
Scanner lang = nový skener ( System.in ) ;
System.out.println ( 'Zadejte název programovacího jazyka: ' ) ;

// Převzít vstup od uživatele
Název řetězce = lang.nextLine ( ) ;

// Nastavte proměnnou na Nepravdivé
Booleovský nalezen = Nepravdivé ;

// Iterujte smyčku a zkontrolujte každou hodnotu smyčky
pro ( int i = 0 ; i < strArray.length; i++ ) {
// Porovnejte každou hodnotu pole se vstupní hodnotou
-li ( jméno.rovná se ( strArray [ i ] ) )
{
// Vytiskněte zprávu o úspěchu
System.out.println ( ''' + jméno + '' existuje v poli.' ) ;
// Nastavte proměnnou na skutečný
nalezeno = skutečný ;
přestávka ;
}
}

// Chcete-li vytisknout chybovou zprávu, zkontrolujte proměnnou
-li ( ! nalezeno )
System.out.println ( ''' + jméno + '' v poli neexistuje.' ) ;
}
}


Výstup:



Následující výstup se vytiskne, pokud je Java brána jako vstupní hodnota, která existuje v hodnotách pole:




Následující výstup se vytiskne, pokud je Perl brán jako vstupní hodnota, která v hodnotách pole neexistuje:





Příklad 2: Použití metody Contains().

Vytvořte soubor Java s následujícím kódem, který převezme vstup od uživatele, a pomocí metody obsahuje() zkontrolujte, zda vstupní hodnota v poli existuje nebo ne. Tato metoda vrátí hodnotu true, pokud vstupní hodnota v poli existuje. V opačném případě tato metoda vrátí hodnotu false.



// Importujte potřebné moduly
import java.util.Scanner;
import java.util.Arrays;
veřejná třída CheckArrayValue2 {
public static void main ( Tětiva [ ] argumenty ) {

// Deklarujte pole řetězcových hodnot
Tětiva [ ] strArray = { 'Jáva' , 'C++' , 'C#' , 'VB.NET' , 'J#' } ;

// Deklarujte objekt skeneru
@ SuppressWarnings ( 'zdroj' )

Vstup skeneru = nový skener ( System.in ) ;
System.out.println ( 'Zadejte název programovacího jazyka: ' ) ;

// Převzít vstup od uživatele
Název řetězce = input.nextLine ( ) ;

// Zkontrolujte, zda hodnota existuje v pole nebo ne pomocí obsahuje ( ) metoda
boolean found = Arrays.asList ( strArray ) .obsahuje ( název ) ;

// Nastavte počáteční hodnotu v výstupní proměnná
Výstup řetězce = 'ten' + jméno;
// Nastavte zprávu na výstupní proměnnou na základě nalezené proměnné
výstup += nalezen ? 'existuje v poli.' : 'v poli neexistuje.' ;
// Vytiskněte výstup
System.out.println ( výstup ) ;
}
}


Výstup:

Následující výstup se vytiskne, pokud je PHP vzato jako vstupní hodnota, která v hodnotách pole neexistuje:


Následující výstup se vytiskne, pokud se C++ vezme jako vstupní hodnota, která existuje v hodnotách pole:

Příklad 3: Použití metody AnyMatch().

Vytvořte soubor Java s následujícím kódem, který převezme vstup od uživatele, a pomocí metody anyMatch() třídy „Stream“ zkontrolujte, zda vstupní hodnota v poli existuje či nikoli. Tato metoda vrátí hodnotu true, pokud vstupní hodnota v poli existuje. V opačném případě tato metoda vrátí hodnotu false.

// Importujte potřebné moduly
import java.util.Scanner;
import java.util.stream.IntStream;
veřejná třída CheckArrayValue3
{
public static void main ( Tětiva [ ] argumenty )
{

// Deklarujte pole čísel
int [ ] numArray = { 89 , Čtyři pět , 72 , 67 , 12 , 43 } ;

// Deklarujte objekt skeneru
@ SuppressWarnings ( 'zdroj' )

Vstup skeneru = nový skener ( System.in ) ;
System.out.println ( 'Zadejte číslo pro vyhledávání: ' ) ;

// Převzít vstup od uživatele
int num = input.nextInt ( ) ;

// Zkontrolujte, zda hodnota existuje v pole nebo ne pomocí anyMatch ( ) metoda
boolean nalezen = IntStream.of ( numArray ) .anyMatch ( X - > x == ne ) ;

// Nastavte počáteční hodnotu v výstupní proměnná
Výstup řetězce = 'ten' + číslo;
// Nastavte zprávu na výstupní proměnnou na základě nalezené proměnné
výstup += nalezen ? 'existuje v poli.' : 'v poli neexistuje.' ;
// Vytiskněte výstup
System.out.println ( výstup ) ;
}
}


Výstup:

Následující výstup se vytiskne, pokud se jako vstupní hodnota, která existuje v hodnotách pole, vezme 45:


Pokud je jako vstupní hodnota, která v hodnotách pole neexistuje, vytištěna hodnota 100:

Závěr

V tomto kurzu jsou na několika příkladech uvedeny tři různé způsoby kontroly, zda pole obsahuje konkrétní hodnotu či nikoli.