Előadásrészlet egy mentorral a Codegym University tanfolyam részeként. Jelentkezzen a teljes tanfolyamra.


"Amigo, eljött a te időd. Most a billentyűzet beviteléről fogok beszélni."

" A System.out segítségével megjelenítettük az adatokat a képernyőn. A bemenet fogadásához a System.in fájlt használjuk ."

– Könnyen hangzik.

" A System.in-nek azonban van egy hiányossága – csak karakterkódok beolvasását teszi lehetővé a billentyűzetről. Ahhoz, hogy megkerüljük ezt a problémát, és egyszerre nagy mennyiségű adatot olvassunk ki, egy összetettebb konstrukciót használunk:

1. példa
Írjon be egy karakterláncot és egy számot a billentyűzetről
InputStream inputStream = System.in;
Reader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);

String name = bufferedReader.readLine(); //Read a string from the keyboard
String sAge = bufferedReader.readLine(); //Read a string from the keyboard
int nAge = Integer.parseInt(sAge); //Convert the string to a number.
2. példa
Az előző példa kompaktabb változata:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

String name = reader.readLine();
String sAge = reader.readLine();
int nAge = Integer.parseInt(sAge);
3. példa
Még kompaktabb
Scanner scanner = new Scanner(System.in);
String name = scanner.nextLine();
int age = scanner.nextInt();

"Bármi kérdés?"

– Ööö...nem értettem semmit.

"A karakterlánc billentyűzetről történő olvasásához a legkényelmesebb egy BufferedReader objektum használata . Ehhez azonban át kell adnia azt az objektumot, amelyről adatokat fog olvasni. Ebben az esetben a System.in ."

"De a System.in és a BufferedReader nem kompatibilis, ezért egy másik adaptert használunk – egy másik InputStreamReader objektumot."

"Azt hiszem, most már értem. Mi ez a szkenner osztály ?"

"A szkenner kényelmes lehet, de nem túl hasznos. A helyzet az, hogy ahogy haladsz (mind a tanulásban, mind a munkában), gyakran fogod használni a BufferedReader-t és az InputStreamReader-t , de a szkennert nagyon ritkán. Példánkban kényelmes, de a jövőben nem lesz túl gyakran hasznos. Így nem nagyon fogjuk használni ."

– Ez egyértelműnek tűnik, de nem vagyok benne biztos, hogy mindent értettem.