这个不需要用loop, 因为是输入完一行数字才计算总和。
import java.util.Scanner;
import java.util.StringTokenizer;
public class Main{
    public static void main(String[] args){
        Scanner input=new Scanner(System.in);        StringTokenizer token = new StringTokenizer(input.nextLine(), " ");
        int sum = 0;
        while(token.hasMoreElements()){
            // 需要检查这个String是不是数字
            sum = sum + Integer.parseInt((String) token.nextElement());
        }        System.out.println(sum);
    }
}

解决方案 »

  1.   

    改进了一下
    import java.util.Scanner;
    import java.util.StringTokenizer;
    import java.util.ArrayList;
    import java.util.List;
    public class Main{
        public static void main(String[] args){
            Scanner input=new Scanner(System.in);
            List<String> numberStrings = new ArrayList<String>();        while(input.hasNextLine()) {
                String s = input.nextLine();
                if(s.substring(0, 1).equals("0")){
                    break;
                }
                numberStrings.add(s);
            }        for(String s : numberStrings){
                StringTokenizer token = new StringTokenizer(s, " ");
                int sum = 0;
                while (token.hasMoreElements()) {
                    // 需要检查这个String是不是数字
                    int n =  Integer.parseInt((String) token.nextElement());
                    sum = sum + n;
                }            System.out.println(sum);
            }
        }
    }