编写 Java 数据统计程序,运行时提示输入若干空格分隔的数,按照升序排序,并统计个数、求和、最大数、最小数。
时间: 2024-12-23 12:26:52 浏览: 1
在Java中编写数据统计程序可以分为以下几个步骤:
1. **用户输入处理**:
首先创建一个 Scanner 对象获取用户的输入,例如整数列表,通过 `nextLine()` 方法读取一串数字并用空格分隔。
```java
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
```
2. **字符串转数组**:
将用户输入的字符串转换成整数数组,可以使用 `Integer.parseInt()` 和 `split()` 方法。
```java
String[] numbers = input.split("\\s+");
int[] intArray = new int[numbers.length];
for (int i = 0; i < numbers.length; i++) {
intArray[i] = Integer.parseInt(numbers[i]);
}
```
3. **排序数组**:
使用 `Arrays.sort()` 方法对整数数组进行升序排序。
```java
Arrays.sort(intArray);
```
4. **统计信息计算**:
- 计算个数:数组长度即为数字个数。
- 求和:遍历数组求和。
- 最大值和最小值:数组的第一个元素是最小值,最后一个元素是最大值。
```java
int count = intArray.length;
long sum = Arrays.stream(intArray).sum();
int max = intArray[intArray.length - 1];
int min = intArray[0];
```
5. **打印结果**:
输出统计信息到控制台。
```java
System.out.println("个数:" + count);
System.out.println("求和:" + sum);
System.out.println("最大值:" + max);
System.out.println("最小值:" + min);
```
完整的代码可能会像下面这样:
```java
import java.util.Arrays;
import java.util.Scanner;
public class NumberStats {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入空格分隔的数字:");
String input = scanner.nextLine();
String[] numbers = input.split("\\s+");
int[] intArray = new int[numbers.length];
for (int i = 0; i < numbers.length; i++) {
intArray[i] = Integer.parseInt(numbers[i]);
}
Arrays.sort(intArray);
int count = intArray.length;
long sum = Arrays.stream(intArray).sum();
int max = intArray[intArray.length - 1];
int min = intArray[0];
System.out.println("个数:" + count);
System.out.println("求和:" + sum);
System.out.println("最大值:" + max);
System.out.println("最小值:" + min);
}
}
```
阅读全文