Input/Output Welche Möglichkeiten Eingabe von User abfragen

schguckemal

Mitglied
Welche Möglichkeiten habe ich denn grundsätzlich, vom User eine Eingabe zu erhalten?

Console.readLine()
Irgendwas mit BufferedReader.

Habe mir mal folgenden Code aus dem Netz geholt.
Läuft der bei euch?

Bei mir meldet netbeans zwar keine Fehler und startet auch, aber es tut sich nichts, Prozess läuft einfach ohne was anzuzeigen.

Java:
import java.util.Scanner;

public class InputExp {

   public static void main(String[] args) {

       String name;
       int age;
       Scanner in = new Scanner(System.in);

       // Reads a single line from the console 
       // and stores into name variable
       name = in.nextLine();

       // Reads a integer from the console
       // and stores into age variable
       age=in.nextInt();
       in.close();            

       // Prints name and age to the console
       System.out.println("Name :"+name);
       System.out.println("Age :"+age);

    }
}
 
Sollte funktionieren, es gibt dennoch verschiedene Möglichkeiten, denke das mit [c]scanner[/c] eine gute Lösung ist, vielleicht auch wegen den aufkommenden Exception.

Man könnte auch, diesen nehmen, wo man direkt bei der Ausführung etwas eingibt.
Java:
class EinGabe {

 public static void main(String[] args) {

  String Test = args[0];

  if("ja".equals(Test)) {
   System.out.println("Juhu");
  }
   else {
    System.out.println("Nö");
   }
 }
}

O.
 
Habe das hier aus der Schule. Habe es auch schon in Netbeans benutzt.
Die Klasse einfach deinem Projekt hinzufügen und dann normal in deiner Klasse über z.B. Tastatur.liesText() eine Eingabe vom User fordern 🙂

Java:
import java.io.BufferedReader;
import java.io.InputStreamReader;

 // Diese Klasse dient dazu, Zahlen, Buchstaben und Texte von der Tastatur
 // einzulesen.

public class Tastatur
{
  // Einlesen eines einzelnen Buchstabens (char).
  public static char liesZeichen()
  {
    try
    {
      return liesText().charAt(0);
    } catch (Exception e)
    {
      return ' ';
    }
  }

  // Einlesen einer Zahl (int).
  public static int liesZahl()
  {
    try
    {
      return Integer.parseInt(liesText());
    } catch (Exception e)
    {
      return 0;
    }
  }

  // Einlesen einer Kommazahl (double).
  public static double liesKommazahl()
  {
    try
    {
      return Double.parseDouble(liesText().replace(',', '.'));
    } catch (Exception e)
    {
      return 0;
    }
  }

  // Einlesen eines Textes (String).
  public static String liesText()
  {
    try
    {
      BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
      return reader.readLine();
    } catch (Exception e)
    {
      return null;
    }
  }

}
 
Peinlich!
Jap, das wars. Ich bin einen Text á la "Machen Sie eine Eingabe" gewöhnt.
Das kommt davon, wenn man 1. Source 1:1 kopiert und 2. nur 3 Kaffee am Tag trinkt!
 

Zurück
Oben