我不知道如何处理以下问题。
我有一个用户输入,他们可以输入由空格分隔的各种数字,例如(20 30 89 ..) 我需要计算输入了多少个数字(在本例中输入了 3 个数字) 我该怎么做?
我假设这背后的逻辑类似于计算空格数并向其添加 1(前面没有空格的初始数字),但我不确定如何通过代码执行此操作。 最好检查一下第一个数字之前是否输入了空格,如果是,则不要在最终计数中添加 + 1,还要检查双空格、三空格等内容并将它们计为一个空格。最后看看末尾是否有空格(所以不会相加)。
这是我到目前为止所得到的(用户输入):
package temperature;
import java.util.*;
/**
* @author --
*/
public class Histogram {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// Input for grades
Scanner input = new Scanner(System.in);
System.out.println("Enter temperatures below (separated by spaces e.g. 20 30 89 ..)");
int temperature = input.nextInt();
}
}
最佳答案
- 只需使用
Scanner#nextLine()
方法读取完整的行即可。 - 将读取行拆分为一个或多个
空格
- 使用+
量词 那个 - 然后获取获取到的
数组
的长度。
这是一个例子:-
if (scanner.hasNextLine()) {
int totalNumbers = scanner.nextLine().split("[ ]+").length;
}
关于java - 计算输入的以空格分隔的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13572761/