#java #string #command-line #count
Вопрос:
Я пытаюсь написать программу, которая передает неопределенное количество целых чисел в качестве аргументов командной строки основному методу и отображает:
- общее количество целых чисел, введенных пользователем
- и их общее
Вот что у меня есть на данный момент.
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int count = 0;
int number, sum = 0;
do {
number = input.nextInt();
sum = sum number;
count;
}
while(number != 0);
// Displays number count.
System.out.println("You entered " count " numbers");
// Displays the total.
System.out.println("The sum of these numbers is " sum);
}
}
Я хотел бы иметь метод для подсчета количества целых чисел в строке, цикл for и следующий символ, а также целое число, чтобы отслеживать его, и метод для добавления чисел, но я не уверен, как его написать без ошибок компиляции.
Комментарии:
1. Какие ошибки компиляции ? Вы используете аргументы cli, но пользователь вводит данные ПОСЛЕ запуска программы
Ответ №1:
Ваша программа работает хорошо, но использует не аргумент cli*, а пользовательский ввод.
Разница в том, что для
- 1-й аргумент приводится перед запуском программы
java myProgram arg1 arg2 >> output
- во 2-м случае аргументы запрашиваются и считываются во время выполнения программы
java myProgram >> Please give arg1: 12 >> Please give arg2: 22 >> output
Так как ваша программа выполняет ввод данных пользователем, вот код для аргумента cli:
int count = 0;
int number, sum = 0;
for (String arg : args) {
number = Integer.parseInt(arg);
sum = sum number;
count;
}
System.out.println("You entered " count " numbers");
System.out.println("The sum of these numbers is " sum);