[Java] Tastatureingabe

koffi

Lt. Junior Grade
Registriert
Jan. 2007
Beiträge
490
Hallo!

in der schule haben wir java programme geschrieben in denen der benutzer aufgefordert wurde etwas einzugeben. dazu haben wir diesen befehl verwendet:

int test;
test =Tastatur.readint();

jedoch hatten wir dort eine datei namens tastatur.class im ordner. ohne diese datei funzt der befehl nicht. geht es auch ohne diese datei? woher bekomm ich die??

danke!
 
Frag deinen Lehrer. Wird ohne die Klasse nicht gehen, jedenfalls nicht mit diesem Befehl.
 
ehm.. ich glaub nicht dass jeder mensch der eine tastatureingabe in java machen will von seinem lehrer abhängig ist. wie macht man sowas denn sonst??!
 
Fynnjard schrieb:
ehm.. ich glaub nicht dass jeder mensch der eine tastatureingabe in java machen will von seinem lehrer abhängig ist. wie macht man sowas denn sonst??!

Ich glaube, Euer Lehrer will Euch anspornen, dass Ihr genau das durch Eigenrecherche herausfindet.
 
wtf.. ^^
ich recherchiere doch gerade.. erst in google, jetzt frage ich euch nach rat!

Wird ohne die Klasse nicht gehen, jedenfalls nicht mit diesem Befehl.

mit welchem befehl denn sonst?
 
Zuletzt bearbeitet:
Hier ein Beispiel:
Code:
import java.io.*;
public class Beispiel {
	public static void main(String[] args) {
		int i = 0;
		System.out.print("Zahl eingeben: ");	
			BufferedReader in = new BufferedReader(new InputStreamReader(System.in));		
		try {
			i = Integer.parseInt(in.readLine());
		} catch (NumberFormatException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		System.out.print(i);
	}
}
 
vielen dank, hat geklappt.

eine frage noch:
ich erstelle meine programme mit jcreator und kann sie auch nur damit ausführen. kann ich sie irgendwie als exe datei abspeichern oder so ähnlich, so dass man sie auch ohne jcreator öffnen kann, auf anderen pcs?
 
Kenne mich nicht genauer mit Java aus aber zumindest die Virtual Machine muss immer installiert sein.
 
du kannst zb über die Eingabeaufforderung (Ausführen - cmd) mit (im Ordner in dem die Datei liegt)
Code:
java NameDerClassDatei
das Programm ausführen
 
geht aber nur wenn der benutzer die virtual machine da (jse oder so) installiert hat oder? das hat ja so ziemlich keiner.
 
Fynnjard schrieb:
geht aber nur wenn der benutzer die virtual machine da (jse oder so) installiert hat oder? das hat ja so ziemlich keiner.
stimmt, aber die java runtime haben sicher mehr als du denkst und ausserdem kostet sie ja nix. es gibt aber auch tools mit denen du aus deinen java-programmen exe-dateien machen kannst - habs vor jahren mal mit einem probiert - weiß jetzt aber nicht mehr was das war - such einfach mal mit google. da wirst du sicher fündig
 
Aber dass es über die VM läuft sollte eigentlich klar sein ist ja eine der Grundideen von Java, da es dadurch erst portabel wird.
 
Für (fast) sämtliche Input-/Output-Sachen dürfte diese class ganz gut sein:

Code:
import java.io.*;

public class InputOutput {

  public static int readInt() {
    int res;
    BufferedReader in = new BufferedReader( 
            new InputStreamReader( System.in )
        );
    try {
      res = Integer.parseInt( in.readLine() );
    } catch( NumberFormatException e ) {
      System.out.println("*** Input not an integer");
      throw new RuntimeException();
    } catch( Exception e ) {
      System.out.println("*** Error in reading input");
      throw new RuntimeException();
    }
    return res;
  }
  
  public static String readString() {
    String res;
    BufferedReader in = new BufferedReader( 
            new InputStreamReader( System.in )
        );
    try {
      res = in.readLine();
    } catch( Exception e ) {
      System.out.println("*** Error in reading input");
      throw new RuntimeException();
    }
    return res;
  }

  public static char readChar() {
    String instr;
    BufferedReader in = new BufferedReader( 
            new InputStreamReader( System.in )
        );
    try {
      instr = in.readLine();
    } catch( Exception e ) {
      System.out.println("*** Error in reading input");
      throw new RuntimeException();
    }
    if( instr.length() == 1 ) {
      return instr.charAt(0);
    } else if( instr.length() > 1 ) {
      System.out.println("*** Error: input too long");
      System.out.println("***        rest of input discarded");
      return instr.charAt(0);
    } else { // instr.length() == 0
      System.out.println("*** Error: input empty");
      throw new RuntimeException();
    }
  }

  public static void print( char c ){
    System.out.print(c);
  }
  public static void println( char c ){
    System.out.println(c);
  }
  public static void print( int i ){
    System.out.print(i);
  }
  public static void println( int i ){
    System.out.println(i);
  }
  public static void print( String s ){
    System.out.print(s);
  }
  public static void println( String s ){
    System.out.println(s);
  }
}

Gute Erklärung über das Java JDK und die Installation: http://www.torsten-horn.de/techdocs/java-install.htm
 
Ehm und mit dem "Scanner"!?

Code:
import java.util.Scanner;

public class ScannerTest {

	public static void main(String[] args) {

		[COLOR="Green"]Scanner scan = new Scanner(System.in);[/COLOR]
		System.out.print("Bitte geben Sie etwas ein: ");
		String s = [COLOR="Green"]scan.next();[/COLOR]
		System.out.println("\nSie haben " + s + " eingeben");

	}
}
 
Zurück
Oben