Felhasználói bemenet olvasása és írása Java-ban
1. Bemutatkozás
Ebben a gyors bemutatóban megtesszük bemutatja a konzol használatának számos módját a felhasználói bevitelhez és kimenethez Java-ban.
Megnézünk néhány módszert a Scanner osztály a bemenet kezelésére, majd megmutatunk néhány egyszerű kimenetet a használatával System.out.
Végül meglátjuk, hogyan kell használni a Konzol osztály, a Java 6 óta elérhető, mind a konzol beviteléhez, mind kimenetéhez.
2. Felolvasás System.in
Az első példáinkra meg fogjuk tenni használja a Scanner osztály a java.util csomagot a bemenet megszerzéséhez System.in - a „standard” bemeneti adatfolyam:
Szkenner szkenner = új szkenner (System.in);
Nézzük használja a nextLine () metódus a bemenet egész sorának a-ként történő olvasására Húr és lépj a következő sorra:
String nameSurname = szkenner.nextLine ();
Azt is megtehetjük használja a következő() módszer a következő beviteli token megszerzéséhez a patakból:
Karakterlánc nem = scanner.next ();
Ha számszerű bemenetre számítunk, akkor megtehetjük használat nextInt () hogy a következő bemenetet mint int primitív, és hasonlóan megtehetjük használat nextDouble () típusú változó megszerzéséhez kettős:
int age = szkenner.nextInt (); dupla magasság = szkenner.nextDouble ();
A Scanner osztály is kínál hasNext_Prefix () módszerek, amelyek visszatérnek igaz ha a következő token megfelelő adattípusként értelmezhető.
Például használhatjuk hasNextInt ()módszer annak ellenőrzésére, hogy a következő token értelmezhető-e egész számként:
while (szkenner.hasNextInt ()) {int nmbr = szkenner.nextInt (); // ...}
Használhatjuk a hasNext (Minta minta) módszer a ellenőrizze, hogy a következő bemeneti token megfelel-e egy mintának:
if (scanner.hasNext (Pattern.compile ("www.baeldung.com"))) {// ...}
A Scanner osztály, használhatunk egy BemenetStreamReader val vel System.in hogy megkapja a bemenetet a konzolról:
BufferedReader buffReader = új BufferedReader (új InputStreamReader (System.in));
Ezután beolvashatjuk a bevitelt és elemezhetjük egész számra:
int i = Integer.parseInt (buffReader.readLine ());
3. Írás System.out
A konzol kimenetéhez használhatjuk System.out - a PrintStream osztály, amely egyfajta OutputStream.
Példánkban a konzol kimenetét használjuk a felhasználói adatbevitelre való felszólítás megadásához, és a végső üzenet megjelenítéséhez a felhasználó számára.
Nézzük használja a println () módszer a nyomtatáshoz a Húr és fejezze be a vonalat:
System.out.println ("Kérjük, írja be a nevét és vezetéknevét:");
Felváltva tehetjük használja a nyomtatás() módszer, amely hasonlóan működik, mint a println (), de a vonal felmondása nélkül:
System.out.print ("Jó reggelt"); System.out.print ("egy!");
4. A Konzol A bemenet és a kimenet osztálya
A JDK 6 és későbbi verzióiban használhatjuk a Konzol osztály tól java.io csomag, amelyről olvashat és írhat a konzolra.
A Konzol objektum, felhívjuk System.console ():
Konzol konzol = System.console ();
Ezután használjuk a readLine () módszere Konzol osztályba írjon egy sort a konzolra, majd olvasson egy sort a konzolról:
String progLanguauge = console.readLine ("Írja be kedvenc programozási nyelvét:");
Ha kényes információkat, például jelszót kell elolvasnunk, használhatjuk a readPassword () módszer a kérje meg a felhasználót a jelszó megadásáról, és olvassa le a jelszót a konzolról, visszakapcsolva:
char [] pass = console.readPassword ("A befejezéshez írja be a jelszót:");
Azt is megtehetjük használja a Konzol osztály, hogy kimenetet írjon a konzolra, például a printf () módszer val,-vel Húr érv:
console.printf (progLanguauge + "nagyon érdekes!");
5. Következtetés
Ebben a cikkben bemutattuk, hogyan lehet több Java osztályt használni a konzol felhasználói bevitelének és kimenetének végrehajtásához.
Mint mindig, ennek az oktatóanyagnak a kódmintái a GitHubon találhatók.