PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Netbeansfehler, oder Codefehler?



Tobyy
06-06-2006, 19:46
Folgendes Problem:
Wir haben von unserem Prof Java-Aufgaben zum Vervollständigen bekommen.
Doch bei folgendem Codeschnipsel macht Netbeans etwas komisches.
Er wartet zuerst auf den Input und schreibt erst danach die Frage hin.
In Eclipse funktioniert alles wie es soll, aber das kann doch kaum ein IDE-Fehler sein,
denn das gleiche Problem taucht bei der Windows-Version und der neuen Beta auf.


import java.io.*;





public class Listenaufgabe

{

public static void main(String[] args)

throws IOException

{

Liste studlist;

BufferedReader stdin;

ListElem current_element;

int i, anzahl;

String n, v, m, suchname;

int a, s;

String temp1;



// Vorbesetzungen:

// stdin liefert gepufferte Eingaben von Tastatur:



stdin = new BufferedReader(new InputStreamReader(System.in));

studlist = new Liste();





// die Anzahl der Datensaetze einlesen:

System.out.print("Wieviel Datensaetze wollen Sie eingeben: ");



anzahl = Integer.parseInt(stdin.readLine());



// alle Datensaetze der Reihe nach abfragen:
... (unwichtig)

Also nochmal an dem Beispiel:
am Anfang erwartet er einen Input. (den er dann an anzahl übergibt).
Erst danach wird die Frage gestellt: "Wieviele Datensaetze wollen sie eingeben: ".
Unser Prof konnte mir da auch nicht helfen und meinte nur in Eclipse geht das.

Ist ein Fehler im Code, oder liegt es wirklich an Netbeans?
Klar kann man Abhilfe schaffen indem man die print jeweils in println umändert,
aber das ist ja eigendlich nicht der Sinn des ganzen.

mfg Tobyy

mwanaheri
06-06-2006, 21:55
Im Quelltext ist mir kein Fehler aufgefallen (allerdings kann da schnell eine NumberFormatException ausgelöst werden.

Es kommt tatsächlich vor, dass IDEs merkwürdige Sachen veranstalten. Ich habe das mit JBuilder auch schon erlebt. Dieses Verhalten scheint aber vor allem in Schulungen aufzutreten. So war's jedenfalls bei mir. Oft lässt es sich beheben, indem man das Projekt rausschmeißt und alle compilierten (.class) Dateien löscht und dann das Projekt neu anlegt.

Tobyy
06-06-2006, 23:33
Das mit der Exception ist klar.
Der Quelltext ist vom Prof und sollte als Einstiegsaufgabe gedacht sein.
Exception-Handling ist erst später dran. ;)

Wenn der Code an sich richtig ist, bzw. den "Standards" entspricht
reicht mir das eigendlich schon, dann wirds wirklich ein Fehler der
IDE sein. Danke.

mfg Tobyy

mwanaheri
07-06-2006, 07:47
Na jedenfalls läuft eine abgespeckte Version, die ich hier im Editor daraus gemacht haben. ;-)

Letztlich kommt es ja nur auf die Reihenfolge der Befehle

System.out.print("Wieviel Datensaetze wollen Sie eingeben: ");
und
anzahl = Integer.parseInt(stdin.readLine());

an.