Dans ce programme, je voulais écrire ceci: il ne devrait obtenir que des nombres positifs de l'utilisateur via le scanner et s'ils sont positifs - il doit les ajouter à la liste de tableaux 'list'. Pour une raison quelconque, il n'ajoute pas le premier nombre lorsque l'utilisateur l'ajoute mais seulement le second (et il fonctionne comme ça dans chaque boucle while).Scanner avec ArrayList
Quelqu'un peut-il vous aider? Merci! :-)
import java.util.ArrayList;
import java.util.Scanner;
import java.util.ArrayList;
public class Second_EX_Advanced_2 {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<Integer>();
System.out.println("Please enter a positive number ... ");
Scanner INPUT = new Scanner(System.in);
while (INPUT.nextInt() > 0) {
list.add(INPUT.nextInt());
System.out.println(list);
}
INPUT.close();
}
}
*
Vous consommez la première valeur entière dans votre 'état while'. – Mena
'while ((value = INPUT.nextInt())> 0)' où 'value' est de type' int', puis 'list.add (value);' – XtremeBaumer
L'utilisation de nextLine() effacera le tampon, de sorte que la prochaine entrée que vous lisez après une erreur va être l'entrée fraîche qui est après la mauvaise ligne que vous avez entré. – VedX