2009-10-16 11 views
2

Je reçois des résultats bizarres de System.out.print immédiatement en dessous de la déclaration Scanner dans l'extrait de code ci-dessous. On dirait qu'il s'exécute deux fois. Je l'ai débogués et immédiatement après l'exécution de l'instruction d'impression que je reçois ceci dans la sortie standard:Comportement Weird System.out.print dans NetBeans

run: Entrez un nombre binaire flippe: Entrez un flippe nombre binaire:

J'ai ajouté le « paniquer » pour vérifier ce n'était pas en quelque sorte entrer l'impression de la boucle while sans que je sache. Pour votre information, ceci est en cours d'exécution dans le netBeans IDE 6.7.1 sur une machine Vista 64 bits avec le JDK 64 bits. J'espère que vous pouvez voir l'erreur de mes manières!

Merci! Edit: Lors de l'exécution du fichier JAR généré par Netbeans sur la ligne de commande, l'instruction ne s'imprime qu'une seule fois. Est-ce que quelqu'un a rencontré ce genre de comportement bizarre dans Netbeans qui pourrait savoir comment je peux empêcher que cela se produise. Je déteste avoir à travailler en dehors de mon IDE pendant les cycles de développement.

private void getInput() 
{ 
    Scanner scanner = new Scanner(System.in); 

    System.out.print("Input a freaking binary number: "); 

    // Grab the next inputed long and save it in the currentValueInBinary 
    // member variable 
    setCurrentValueInBinary(scanner.nextLong()); 

    // Loop until a valid binary number is retrieved 
    while (!isNumberBinary(currentValueInBinary)) 
    { // Input was negative, report error and re-request input 
     System.out.println("Input must be a Binary value"); 
     System.out.print("\nInput a binary number: "); 

     setCurrentValueInBinary(scanner.nextLong()); 
    } 
} 
+1

Obtenez-vous le même résultat si vous l'exécutez directement à partir de la ligne de commande? Si vous pouviez refactoriser cela en un programme court mais * complet *, cela faciliterait le débogage. –

+0

Cela fonctionne très bien sur la ligne de commande en utilisant le fichier JAR généré par Netbeans. Donc, il me semble que c'est un problème Netbeans. Un que je voudrais encore comprendre, mais au moins nous l'avons réduit! – Brian

Répondre

3

Le bug «2 espace après:» dans print (String s) dans Netbeans?

Dans la ligne:

System.out.print ("Input un flipper nombre binaire:");

supprime le 2ème espace de fin.

+0

Sacré merde tu dois te moquer de moi! Ça y est ...! – Brian

+0

Savez-vous si cela va être réparé de sitôt? – Brian

+0

très intéressant je n'ai jamais remarqué cela. va devoir se répliquer. je suis curieusement curieux. –