Hallo zusammen.
Ich bin recht neu in der Welt von Java und habe mir ein anfänger Buch gekauft damit ich besser reinkomme.
Nun steht im Buch folgender Code:
Java:
importstaticProg1Tools.IOTools:*;publicclass lern1 {publicstaticvoidmain(String[] args){int i, j, k;double d;char c;boolean b;//int Eingabe ohne Promt
i =readInteger();//int Eingame mit PromtSystem.out.print("j = ");
j =readInteger();//vereinfachte int Eingabe mit Promt
k =readInteger("k = ");//double-eingabe mit Promt
d =readDouble("d = ");//char-eingabe mit Promt
c =readChar("c = ");//boolean-Eingabe mit Promt
b =readBoolean("b = ");//TestausgabenSystem.out.println("i = "+ i);System.out.println("j = "+ j);System.out.println("k = "+ k);System.out.println("d = "+ d);System.out.println("c = "+ c);System.out.println("b = "+ b);}}
Aber die Konsole gibt folgendes aus:
Code:
mk:test1 realmarra$ javac lern1.java
lern1.java:1: ';' expected
import static Prog1Tools.IOTools:*;
^
1 error
mk:test1 realmarra$ javac lern1.java
lern1.java:1: package Prog1Tools does not exist
import static Prog1Tools.IOTools.*;
^
lern1.java:10: cannot find symbol
symbol : method readInteger()
location: class lern1
i = readInteger();
^
lern1.java:14: cannot find symbol
symbol : method readInteger()
location: class lern1
j = readInteger();
^
lern1.java:17: cannot find symbol
symbol : method readInteger(java.lang.String)
location: class lern1
k = readInteger("k = ");
^
lern1.java:20: cannot find symbol
symbol : method readDouble(java.lang.String)
location: class lern1
d = readDouble("d = ");
^
lern1.java:23: cannot find symbol
symbol : method readChar(java.lang.String)
location: class lern1
c = readChar("c = ");
^
lern1.java:26: cannot find symbol
symbol : method readBoolean(java.lang.String)
location: class lern1
b = readBoolean("b = ");
^
7 errors
Ich verstehe nicht wieso?
Im Buch steht dass das so funktionieren sollte.
Kann mir da einer Helfen?
Ich benutze Mac OS 10.6.8
Vielen Dank im Vorraus
Das : statt . war ein fehler meinerseits, der ist behoben, muss ich noch schnell ändern.
Aber ich weiss jetzt nicht wie ich weiter vorgehen soll. Ich hab keinen Editor oder so, ich benutze den TextEditor.. Wie bekomme ich da die IOTools da jetzt "rein"?
wer hat dir denn in den Kopf gesetzt, dass es sowas wie IOTools überhaupt gibt?
eine reale Person in deinem Leben, etwa ein Lehrer? wie sieht es dann mit Hinweisen und Material aus,
ist z.B. die Klasse als Library zur Verfügung gestellt?
edit:
> Nun steht im Buch folgender Code:
ok, das ist natürlich ein GAU, Buch sofort verbrennen
oder steht dort nichts an Anleitung dazu?
Ja, aber ich hab das Buch jetzt und jetz will ich damit auch was anfangen können...
vondemher hilft mir das jetzt nicht unbedingt viel weiter. und Geld für noch son schinken habe ich nicht...
Ja, die berühmt-berüchtigten IO-Hilfklassen... Für einen Kurs in der Schule 1995 mögen die noch ihre Berechtigung gehabt haben, aber seit Java 1.5 sollte es ein Scanner (Java Platform SE 6) doch tun. Ansonsten vielleicht mal der erste Ergebnis einer Websuche nach "Prog1Tools IOTools" ansehen... IOTools Einführung, Installation, Anwendung
Witzig, von der seite (Grundkurs Programmieren in Java) ist auch das Buch was ich habe.
ich hab mal durchgeblättert, die IOTools werden durchs ganze Buch weiterhin verwendet.
Angeblich soll das Buch ja (abgesehen davon ) ganz OK sein ???:L aber das ist nur Hörensagen.
Du kannst die IOTools ja installieren, die werden ja wohl nicht der eigentliche Lerninhalt sein, sondern nur dem Zweck dienen, mal schnell an der Konsole was eingeben zu können ... aber du solltest dir zumindest an einem Beispiel ansehen, wie man die wichtigsten Funktionen (readInteger etc.) stattdessen mit einem Scanner machen könnte. Danach kannst du diese Lib als mysteriöse Kuriosität einfach hinnehmen.
Witzig, von der seite (Grundkurs Programmieren in Java) ist auch das Buch was ich habe.
ich hab mal durchgeblättert, die IOTools werden durchs ganze Buch weiterhin verwendet.
Das Buch ist gar nicht schlecht, hab mal durchgeblättert, da es auch bei uns in der Bibliothek liegt und mir das Kapitel zur Netzwerk-Programmierung durchgelesen. Und ich kann jetzt in dem Fall nur über das E-Book sprechen, aber: http://www.abload.de/img/captureiruyj.png
Ich gehe eigentlich davon aus, dass diese IOTools wirklich nur entwickelt wurden, als es den Scanner noch nicht gab (damals waren Konsoleneingaben AFAIR wirklich ziemlich krampfig), und sie einfach beibehalten wurden (vielleicht schon aus dem pragmatischen Grund: die Beispielprogramme nicht aktualisieren zu müssen ). Wie gesagt, solange die nicht das Kernthema sind, und wenn man weiß, wie man das gleiche mit einem Scanner machen würde, braucht man sich da wohl nicht sooo viele Gedanken drum zu machen.
aber du solltest dir zumindest an einem Beispiel ansehen, wie man die wichtigsten Funktionen (readInteger etc.) stattdessen mit einem Scanner machen könnte. Danach kannst du diese Lib als mysteriöse Kuriosität einfach hinnehmen.
Gennau das habe ich ja, in einem "Workshop" auf YouTube da hieß es auch Scanner, allerdings ist der mittlerweile offline, und jetzt wo ich das Buch schon habe..
naja. Ich versuche auf jedenfall mal die IOTools trozdem zu installieren, allerdings finde ich den Ordner der auf der Seite beschrieben wird nicht..
Wenn alles scheitert versuche ich einfach mal die entsprechenden Codezeilen mit einem Scanner zu ersetzen..
So ich hab das Programm jetzt mal umgeschrieben, hoffentlich lassen sich die anderen Testprogramme auch umschreiben ohne grosse Probleme.
Danke schön an alle die geholfen haben.
Java:
importjava.util.Scanner;publicclass lern1 {publicstaticvoid main (String[] args){int i, j, k;double d;char c;boolean b;// int-Eingabe ohne Prompt (ohne vorherige Ausgabe)Scanner sc =newScanner(System.in);
i = sc.nextInt();// int-Eingabe mit PromptSystem.out.println("Zahl eingeben");Scanner sc1 =newScanner(System.in);
j = sc1.nextInt();// F4IL wegen nix vereinfachtSystem.out.println("Zahl eingeben");Scanner sc2 =newScanner(System.in);
k = sc1.nextInt();// double-Eingabe mit PromptSystem.out.println("Zahl eingeben");Scanner sc3 =newScanner(System.in);
d = sc1.nextDouble();// char-Eingabe mit PromptSystem.out.println("Buchstaben eingeben");Scanner sc4 =newScanner(System.in);
c = sc.next().charAt(0);// boolean-Eingabe mit PromptSystem.out.println("true oder false eingeben");Scanner sc5 =newScanner(System.in);
b = sc.nextBoolean();// TestausgabenSystem.out.println("i = "+ i);System.out.println("j = "+ j);System.out.println("k = "+ k);System.out.println("d = "+ d);System.out.println("c = "+ c);System.out.println("b = "+ b);}}