V tomto programu se naučíte zkontrolovat, zda je daný znak abeceda či nikoli. To se provádí pomocí příkazu if else nebo ternárního operátoru v Javě.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Prohlášení Java, pokud … else
- Operátoři Java
Příklad 1: Program Java ke kontrole abecedy pomocí if else
public class Alphabet ( public static void main(String() args) ( char c = '*'; if( (c>= 'a' && c = 'A' && c <= 'Z')) System.out.println(c + " is an alphabet."); else System.out.println(c + " is not an alphabet."); ) )
Výstup
* není abeceda.
V Javě char
proměnná ukládá hodnotu ASCII znaku (číslo mezi 0 a 127) spíše než samotný znak.
Hodnota ASCII malých abeced je od 97 do 122. A hodnota ASCII velkých abeced je od 65 do 90. To znamená, že abeceda a je uložena jako 97 a abeceda z jako 122 . Podobně je abeceda A uložena jako 65 a abeceda Z jako 90 .
Nyní, když porovnáváme proměnnou c mezi „a“ na „z“ a „A“ na „Z“, je proměnná porovnána s hodnotou ASCII abeced 97 až 122 a 65 až 90.
Protože ASCII hodnota * nespadá mezi ASCII hodnotu abeced. Výstupy programu tedy nejsou abecedou .
Problém můžete také vyřešit pomocí ternárního operátoru v Javě.
Příklad 2: Program Java ke kontrole abecedy pomocí ternárního operátoru
public class Alphabet ( public static void main(String() args) ( char c = 'A'; String output = (c>= 'a' && c = 'A' && c <= 'Z') ? c + " is an alphabet." : c + " is not an alphabet."; System.out.println(output); ) )
Výstup
A je abeceda.
Ve výše uvedeném programu je příkaz if else nahrazen ternárním operátorem ( ? :
).
Příklad 3: Program Java ke kontrole abecedy pomocí metody isAlphabetic ()
class Main ( public static void main(String() args) ( // declare a variable char c = 'a'; // checks if c is an alphabet if (Character.isAlphabetic(c)) ( System.out.println(c + " is an alphabet."); ) else ( System.out.println(c + " is not an alphabet."); ) ) )
Výstup
a je abeceda.
Ve výše uvedeném příkladu si všimněte výrazu
Character.isAlphabetic(c)
Zde jsme použili isAlphabetic()
metodu Character
třídy. Vrátí se, true
pokud je zadanou proměnnou abeceda. Proto if
je spuštěn kód uvnitř bloku.