计算并实现一个应用程序,读取0-49范围内的任意多个整数,并且计算每项输入数据出现的次数。当输入完成后,打印所有的输入值及其出现的次数。(提示:使用命令行参数)用java写
时间: 2024-12-19 14:26:21 浏览: 7
好的,下面是一个用Java编写的应用程序,它读取命令行参数中的0-49范围内的整数,并计算每个整数出现的次数。当输入完成后,它会打印所有的输入值及其出现的次数。
```java
import java.util.HashMap;
import java.util.Map;
public class CountIntegers {
public static void main(String[] args) {
// 创建一个HashMap来存储每个整数及其出现的次数
Map<Integer, Integer> countMap = new HashMap<>();
// 遍历命令行参数
for (String arg : args) {
try {
int number = Integer.parseInt(arg);
if (number >= 0 && number <= 49) {
countMap.put(number, countMap.getOrDefault(number, 0) + 1);
} else {
System.out.println("忽略无效输入: " + number);
}
} catch (NumberFormatException e) {
System.out.println("忽略无效输入: " + arg);
}
}
// 打印所有输入值及其出现的次数
System.out.println("输入值及其出现的次数:");
for (Map.Entry<Integer, Integer> entry : countMap.entrySet()) {
System.out.println("值: " + entry.getKey() + ", 次数: " + entry.getValue());
}
}
}
```
### 使用说明:
1. 将上述代码保存到一个名为 `CountIntegers.java` 的文件中。
2. 打开终端或命令提示符,导航到保存该文件的目录。
3. 编译程序:
```sh
javac CountIntegers.java
```
4. 运行程序并传递命令行参数(例如:0到49之间的整数):
```sh
java CountIntegers 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 0 1 2 3 4 5
```
### 输出示例:
```
输入值及其出现的次数:
值: 0, 次数: 2
值: 1, 次数: 2
值: 2, 次数: 2
值: 3, 次数: 2
值: 4, 次数: 2
值: 5, 次数: 2
值: 6, 次数: 1
值: 7, 次数: 1
...
值: 49, 次数: 1
```
这个程序会读取命令行参数中的所有整数,并统计每个整数在输入中出现的次数,然后打印结果。如果输入的整数不在0到49的范围内,或者不是有效的整数,程序会忽略这些无效输入。
阅读全文