gicio Geschrieben 19. November 2001 Teilen Geschrieben 19. November 2001 ich wollte was von der tastatur einlesen und es in person01.setName eingeben... aber es klappt nicht! // Datei Test.java import java.util.*; import java.io.*; public class Test { //leerer Konstruktor Test() { } public static void main (String[] args) { // Bestandsteile der Person werdern definiert // Das Objekt PersonAddress wird mit den Person zusammengefügt Vector v = new Vector(); Person person01 = new Person(); BufferedReader eingabe = new BufferedReader(new InputStreamReader (System.in)); try { System.out.println("Bitte Geben Sie den Namen ein :"); person01.setName(eingabe) = readLine(); } catch(IOException e) { System.out.print("Fehler bei der Eingabe!"); } Enumeration e; Person currentPerson; System.out.println("\n\n Name\t "); for (e = v.elements() ; e.hasMoreElements() ; ) { currentPerson = (Person)e.nextElement(); System.out.println( currentPerson.name() ); } } } dieser fehler wird mir angezeigt: Test.java:37: setName(java.lang.String) in Person cannot be applied to (java.io. BufferedReader) person01.setName(eingabe) = readLine(); ^ Test.java:37: cannot resolve symbol symbol : method readLine () location: class Test person01.setName(eingabe) = readLine(); ^ 2 errors was mach ich falsch? thx gicio Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gicio Geschrieben 19. November 2001 Autor Teilen Geschrieben 19. November 2001 hab auch das vesucht und es klapt aucht nicht!! // Datei Test.java import java.util.*; import java.io.*; public class Test { //leerer Konstruktor Test() { } public static void main (String[] args) { // Bestandsteile der Person werdern definiert // Das Objekt PersonAddress wird mit den Person zusammengefügt Vector v = new Vector(); Person person01 = new Person(); String tastatur = readLine(); try { System.out.println("Bitte Geben Sie den Namen ein :"); person01.setName(tastatur) = readLine(); } catch(IOException e) { System.out.print("Fehler bei der Eingabe!"); } Enumeration e; Person currentPerson; System.out.println("\n\n Name\t "); for (e = v.elements() ; e.hasMoreElements() ; ) { currentPerson = (Person)e.nextElement(); System.out.println( currentPerson.name() ); } } } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
makii Geschrieben 19. November 2001 Teilen Geschrieben 19. November 2001 Sersn, versuchts mal damit: person01.setName( eingabe.readLine() ); du musst natürlich die methode readLine() im BufferedReader aufrufen!!! der setter setName( String newName ) benötigt als parameter einen String und keinen BufferedReader!!!! Wenn ihr du ihm irgendeinen String geben würdest würde er javac spätestens bei dem aufruf der methode readline() meckern, da er, ohne ein vorangestelltes Objekt, die methode in this (objekt in dem der code gerade ausgeführt wird) suchen würde. die findet er natürlich nicht! Frohes Üben!!!!!! Cheers, Ralf PS: ich hab's nicht getestet, ansonsten nochmal melden! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gicio Geschrieben 20. November 2001 Autor Teilen Geschrieben 20. November 2001 meinst du das so: Person person01 = new Person(); BufferedReader eingabe = new BufferedReader(readLine() ); try { System.out.println("Bitte Geben Sie den Namen ein :"); person01.setName(eingabe.readLine()) = readLine(); } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gicio Geschrieben 20. November 2001 Autor Teilen Geschrieben 20. November 2001 bei den aufruf bekomme ich diese fehlermeldung: C:\Java\Project>javac Test.java Test.java:29: cannot resolve symbol symbol : method readLine () location: class Test BufferedReader eingabe = new BufferedReader(readLine() ); ^ Test.java:38: unexpected type required: variable found : value person01.setName(eingabe.readLine()) = readLine(); ^ Test.java:38: cannot resolve symbol symbol : method readLine () location: class Test person01.setName(eingabe.readLine()) = readLine(); ^ 3 errors Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gicio Geschrieben 20. November 2001 Autor Teilen Geschrieben 20. November 2001 hmmmmmmmmmmmmmm ich glaub das ist die beste lösung! BufferedReader eingabe = new BufferedReader(new InputStreamReader (System.in) ); String eingabeZeile; try { System.out.println("Bitte Geben Sie den Namen ein :"); eingabeZeile = eingabe.readLine(); person01.setName( eingabe.readLine() ); } catch(IOException e) { System.out.print("Fehler bei der Eingabe!"); } oder was meint ihr??? thx gicio Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
gicio Geschrieben 20. November 2001 Autor Teilen Geschrieben 20. November 2001 das hat jetzt zwar geklapt, aber er zeigt mir nicht an das ich das was ich eingelesen habe in ein vektor gelegt habe. // Datei Test.java import java.util.*; import java.io.*; public class Test { public static void main (String[] args) { // Bestandsteile der Person werdern definiert // Das Objekt PersonAddress wird mit den Person zusammengefügt Person person01 = new Person(); BufferedReader eingabe = new BufferedReader(new InputStreamReader (System.in) ); String tastatur; try { System.out.println("Bitte Geben Sie den Namen ein :"); tastatur = eingabe.readLine(); person01.setName( eingabe.readLine() ); } catch(IOException e) { System.out.print("Fehler bei der Eingabe!"); } Vector v = new Vector(); v.addElement(person01.name() ); Enumeration e; Person currentPerson; System.out.println("\n\n Name\t "); for (e = v.elements() ; e.hasMoreElements() ; ) { currentPerson = (Person)e.nextElement(); System.out.println( currentPerson.name() ); } } } Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
spruce257 Geschrieben 20. November 2001 Teilen Geschrieben 20. November 2001 Im Codde schreibst Du: try { tastatur = eingabe.readLine(); person01.setName( eingabe.readLine() ); } Das Problem ist, dass der Buffer durch die erste Zeile bereits ausgelesen wird... d. h., wenn Du das zweite mal eine Zeile auslesen willst, liest Du bereits die nächste aus... und da steht nichts drin! Deine aktuelle Eingabe wurde allerdings schon in der ersten Zeile im String tastatur gespeichert, also musst Du folgendes in der zweiten Zeile schreiben: person01.setName(tastatur); ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.