灵活使用java对数组操作的方法进行成绩统计的代码
时间: 2024-11-04 08:10:57 浏览: 9
C#使用自定义算法对数组进行反转操作的方法
在Java中,你可以使用ArrayList或者数组List接口来灵活地对一组学生成绩进行统计。这里是一个简单的示例,假设我们有一个学生的成绩数据存储在一个String类型的二维数组中:
```java
import java.util.ArrayList;
import java.util.List;
public class ScoreStatistics {
public static void main(String[] args) {
String[][] studentScores = {
{"张三", "90"},
{"李四", "85"},
{"王五", "95"},
{"赵六", "88"}
};
// 创建一个ArrayList来存储学生信息
List<Student> students = new ArrayList<>();
// 将二维数组转换为一维列表,每个元素代表一个学生及其分数
for (String[] pair : studentScores) {
students.add(new Student(pair[0], Integer.parseInt(pair[1])));
}
// 统计平均分、最高分和最低分
double sum = 0;
int maxScore = students.get(0).getScore();
int minScore = students.get(0).getScore();
for (Student student : students) {
sum += student.getScore();
if (student.getScore() > maxScore) {
maxScore = student.getScore();
}
if (student.getScore() < minScore) {
minScore = student.getScore();
}
}
double average = sum / students.size();
System.out.println("平均分: " + average);
System.out.println("最高分: " + maxScore);
System.out.println("最低分: " + minScore);
// 如果你想按照成绩排序,可以这样做(这里省略了)
// Collections.sort(students, Comparator.comparing(Student::getScore));
}
}
class Student {
private String name;
private int score;
public Student(String name, int score) {
this.name = name;
this.score = score;
}
public int getScore() {
return score;
}
@Override
public String toString() {
return name + ": " + score;
}
}
```
在这个例子中,我们创建了一个名为`Student`的类,并使用ArrayList来存储学生对象。然后通过遍历和操作这个列表来完成统计。
阅读全文