我想創建一個「計算器」,除了它需要打印每個元素,用於構成總和。數組元素的這種打印需要在程序結束時發生,當用戶連續兩次輸入0時。如何在Java中求和整型輸入,並在程序結束時在數組中顯示結果?
輸入一個輸入後,整數值將被存儲在一個數組中。一旦程序結束,該數組的內容將被打印。但是,如果尚未達到程序的結束時間,程序將繼續,而用戶將添加連續的輸入。
目前,程序將一次僅打印一個元素,而不是每個用於計算總數的元素。我花了幾個小時試圖調試,任何指導將不勝感激!
import java.util.*;
public class AddingMachine {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
boolean justStarting = true;
int total = 0;
int subtotal = 0;
int input;
int last = 1;
int MAXIMUM_NUMBER_OF_INPUTS = 100;
while (true) {
input = scanner.nextInt();
if (input == 0) {
if (last == 0) {
System.out.println("total " + total);
return;
}
System.out.println("subtotal " + subtotal);
total += subtotal;
subtotal = 0;
}
subtotal += input;
last = input;
int[] numbers = new int[args.length];
for (int i = 0; i < args.length; i++) {
numbers[i] = last;
}
System.out.println(Arrays.toString(numbers));
}
}
無論何時您正在編寫命令行程序,您都應該讓用戶知道他/她需要做什麼。例如:System.out.print(「請輸入一個數字:」);例如:System.out.println(「請按z結束程序」); – Sedrick
[Java從一行讀取多個整數]的可能重複(http://stackoverflow.com/questions/23506429/java-reading-multiple-ints-from-a-single-line) – demongolem