2014-10-02 56 views
0

这里是我的代码:我怎样才能让这个程序打印出用户输入的数字?

import java.util.*; 

public class InputSum 
{ 
    public static void main(String[]args) 
    { 
     Scanner input = new Scanner(System.in); 

     System.out.print("Please enter integer values (-1 to to display numbers & sum): "); 

     int i = input.nextInt(); 
     int j = 0; 

     while (i != -1) 
     { 
     j += i; 
     i = input.nextInt(); 
     } 

     System.out.println("Entered Number: " + i); 
     System.out.println("The Sum: " + j); 
    } 
} 

截至目前我的输出是:

输入的号码:-1

的总和:(总人数的进入)

+0

你将不得不在存储数字之前覆盖我,可能是一个ArrayList。 – Compass 2014-10-02 18:21:01

回答

2

打印他们内部循环:

while (i != -1) 
    { 
    System.out.println("Entered Number: " + i); 
    j += i; 
    i = input.nextInt(); 
    } 

    System.out.println("The Sum: " + j); 

或者你想打印它们在一个单行:

List numbers = new ArrayList<Integer>(); 
    while (i != -1) 
    { 
    numbers.add(i); 
    j += i; 
    i = input.nextInt(); 
    } 
    System.out.println("Entered Numbers: " + numbers); 
    System.out.println("\nThe Sum: " + j); 
+0

单行不是你在控制台中输入的内容,因此如果你想输入'1 2 3 -1',你会得到'1 Entered Numbers:12 23 3-1 -1'? – Compass 2014-10-02 18:25:25

+0

@Compass你是对的。我没有想到你实际打印的内容会干扰显示的输出。如果您想要在一行中打印所有输入,则应将其收集到列表中并打印列表。 – Eran 2014-10-02 18:29:41

0
public static void main(String[] args) { 
    Scanner input = new Scanner(System.in); 
    ArrayList<Integer> numbers = new ArrayList<Integer>(); 

    System.out 
      .print("Please enter integer values (-1 to to display numbers & sum): "); 

    int i = input.nextInt(); 
    int j = 0; 

    while (i != -1) { 
     numbers.add(i); 
     j += i; 
     i = input.nextInt(); 
    } 
    System.out.println("Entered Numbers: "); 
    for (int a = 0; a < numbers.size(); a++) { 
     System.out.print(" " + numbers.get(a)); 
    } 
    System.out.println("The Sum: " + j); 
} 

这应该打印的数字。您可以使用数组列表来存储数字,然后如果您需要它们进行后续计算,它们仍然存储在数组列表中。

0
 package net.rajkannan.stackoverflow; 

     import java.util.*; 

     public class InputSum { 
      public static void main(String[] args) { 
       Scanner input = new Scanner(System.in); 

       System.out 
         .print("Please enter integer values (-1 to to display numbers & sum): "); 

       int i = input.nextInt(); 
       int j = 0; 
       String numbers = ""; 

       while (i != -1) { 
        j += i; 
        numbers = numbers + i + " "; 
        i = input.nextInt(); 
       } 

       System.out.println("Entered Numbers: " + numbers); 
       System.out.println("The Sum: " + j); 
      } 
     } 
相关问题