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());
}
}
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. –
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