Wie man ArrayList<Integer> und Scanner zu spielen schön?

import java.util.*;

public class CyclicShiftApp{

   public static void main(String[] args){
      Scanner scan = new Scanner(System.in);
      ArrayList<Integer> list = new ArrayList<Integer>();
      while(scan.hasNextInt()){
         list.add(scan.nextInt());
      }
      Integer[] nums = new  Integer[list.size()];
      nums = list.toArray(nums);
      for(int i = 0;i < nums.length; i++){
      System.out.println(nums[i]);
      }   
}

Dank poor-mans-debugging habe ich herausgefunden, dass die while(scan.hasNextInt()) ist nicht wirklich etwas hinzuzufügen. Was könnte schief gehen? Ist mein google-fu schwach oder Mangel an know-how, lassen Sie mich runter? Ich bin ziemlich neu zu Programmieren, und so unvertraut mit den Listen, so gedacht das wäre doch ein schöner Erster Schritt, aber er etwas nicht addieren. Es kompiliert auch gut, also Seine syntax nicht(mehr). Vielleicht ein casting-Problem?

Sie haven T erzählte uns etwas über das, was Eingang haben Sie es gegeben. Es funktioniert für mich. Wenn ich in 10 (return) 20 (zurück) 30 (return) Strg-D (hin und zurück) es zeigt die drei zahlen.
Oh, tut mir Leid. Nur eine Liste von zahlen mit Leerzeichen. zB. 14 17 18 33 54 1 4 6
Wieder, wenn ich Schreibe, dann Enter, dann Ctrl-D wieder, es gibt alle zahlen. Wie sind Sie beenden die Eingabe? (Herzlichen Glückwunsch zum anzeigen einer kurzen, aber vollständigen Programm, und versuchen zu lernen, von Grund auf eher als racing gerade an einem GUI - + - Datenbank usw, by the way. Ich wünschte, jeder nahm diesen Ansatz.)
14 17 18 33 54 1 4 6 wird es so behandeln, als String - Eingang und - scan.hasNextInt() false zurück.
Sie können die Schleife beenden, indem Sie die nicht-ganzzahlige.

InformationsquelleAutor Samwise Gibbens | 2013-04-19

Schreibe einen Kommentar