Gyakorlati alapok
Egy öntudatos lépés: az önellenőrzés (legalábbis a nevünké)
Ebben a rövid fejezetben a do-while ciklusok működésének szemléltetésére (Dönteni kell! (do - while) című fejezet) implementálunk egy olyan futtatható Java-kódot, amely azt ellenőrzi, hogy nevünket jól gépeltük-e be. Ennek alapja nyilvánvalóan egy előzetes értékadás (ez a nevünk), majd ezzel a bekért String összehasonlítása. A mozzanat kezdők számára kissé problematikus lehet, hiszen könnyen beleeshetünk abba a hibába, hogy nem a valós tartalmat, hanem csak memóriacímeket hasonlítunk össze. Erről részletesen írok a String című fejezetben, ám az eredmény egyértelműen látható az alábbi kódban: az equals() függvény tartalom szerint működik, ezért a kiértékelés korrekt eredményt fog szolgáltatni (mert most erre, azaz tartalom szerinti összehasonlításra van szükségünk).
A megvalósításban a konkrét nevek nem a deklarációnál (String vezeteknev, keresztnev = null;), hanem a hátultesztelő ciklus equals függvényének paraméterlistájában lettek beállítva.
do
{
System.out.println ("Kérem, hogy adja meg a vezetéknevét!");
vezeteknev = scanner.nextLine();
}while(!vezeteknev.equals("Pénzes"));
Saját neveinket tehát az összehasonlítás 1. lépéseként majd ide kell beírni. Futtatáskor a program addig nem fog továbblépni, amíg nem gépeljük be pontosan az itt megadott neveket. Nézzük meg futtatható Java-kódos változatát!
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner (System.in);
String vezeteknev, keresztnev = null;
do
{
System.out.println ("Kérem, hogy adja meg a vezetéknevét!");
vezeteknev = scanner.nextLine();
}while(!vezeteknev.equals("Pénzes"));
do
{
System.out.println ("Kérem, hogy adja
meg a keresztnevét!");
keresztnev = scanner.nextLine();
}while(!keresztnev.equals("László"));
System.out.println("Jó napot kívánok, kedves " + vezeteknev +
" " + keresztnev + "!");
}
}
Végeredmény (például):
Jó napot kívánok, kedves Pénzes László!