ArrayList

Diskutiere ArrayList im Java Basics - Anfänger-Themen Bereich.
V

Volnick

Guten Tag,
könnte mir jemand erklären, warum bei "Eingabe 1" sofort ein leerer Array ausgegeben wird? Normalerweise will ich eine Eingabe tätigen und nicht erst einen leeren Array erhalten.
Wie könnte ich diese Problem umgehen? Für Vorschläge oder Tipps wäre ich sehr dankbar!

Code:
public static void main(String[] args) {

        List<String> list = new ArrayList<String>();
        Scanner sc = new Scanner(System.in);
        System.out.println("Wie viele Eingaben möchten Sie speichern?");
        int anzahl = sc.nextInt();
        for(int i = 1; i < anzahl+1; i++){
            System.out.println("Eingabe "+ i + ": " );
            String eingabe = sc.nextLine();
            list.add(eingabe);
            System.out.println(list);
        }
        
        OUTPUT bei anzahl = 3
        Eingabe 1:
        []
        Eingabe 2:
        asd
        [, asd]
        Eingabe 3:
        asd
        [, asd, asd]
 
T

Tobias-nrw

sc.skip("[\\s]*"); does the Trick...

Java:
		List<String> list = new ArrayList<String>();
        Scanner sc = new Scanner(System.in);
        System.out.println("Wie viele Eingaben möchten Sie speichern?");
        int anzahl = sc.nextInt();
        for(int i = 1; i < anzahl+1; i++){
            System.out.println("Eingabe "+ i + ": " );
            sc.skip("[\\s]*");
            String eingabe = sc.nextLine();
            list.add(eingabe);
            System.out.println(list);
        }
Code:
Wie viele Eingaben möchten Sie speichern?
2
Eingabe 1: 
Hallo
[Hallo]
Eingabe 2: 
Du
[Hallo, Du]

Die Begründung ist einfach, sc.nextInt(); konsumiert nicht das Zeilenende...
 
Thema: 

ArrayList

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben