java判断张三_java中list集合求学生总成绩,求张三和李四的总成绩,用循环判断的形式实现...

该Java代码示例展示了如何通过遍历List集合计算所有学生的总成绩,以及分别计算张三和李四的总成绩。使用BigDecimal类确保在处理分数时保持精度。程序输出结果为:总成绩270.0,张三总成绩130.0,李四总成绩140.0。
摘要由CSDN通过智能技术生成

展开全部

package image;

import java.math.BigDecimal;

import java.util.ArrayList;

import java.util.List;

public class Stu {

public String name;

public String course;

public int score;

public int total;

public Stu(String name, String course, int score) {

this.name = name;

this.course = course;

this.score = score;

}

public String getName() {

return name;

}

public int getScore() {

return score;

}

public int getTotal() {

return total;

}

public void setTotal(int total) {

this.total = total;

}

public static void main(String[] args) {

List list = new ArrayList();

Stu stu0 = new Stu("张三", "语文", 60);

Stu stu1 = new Stu("张三", "数学", 70);

Stu stu3 = new Stu("李四e5a48de588b63231313335323631343130323136353331333363356564", "语文", 65);

Stu stu4 = new Stu("李四", "数学", 75);

list.add(stu0);

list.add(stu1);

list.add(stu3);

list.add(stu4);

// 总成绩

BigDecimal totalB = new BigDecimal("0");

BigDecimal totalZhangsan = new BigDecimal("0");

BigDecimal totalLisi = new BigDecimal("0");

for (Stu stu : list) {

totalB = totalB.add(new BigDecimal(stu.getScore() + ""));

if ("张三".equals(stu.getName())) {

totalZhangsan = totalZhangsan.add(new BigDecimal(stu.getScore() + ""));

}else if ("李四".equals(stu.getName())) {

totalLisi = totalLisi.add(new BigDecimal(stu.getScore() + ""));

}

}

System.out.println(totalB.doubleValue());

System.out.println(totalZhangsan.doubleValue());

System.out.println(totalLisi.doubleValue());

}

}

使用BigDecimal避免分数为小数时失真

结果为:

总成绩:270.0

张三:130.0

李四:140.0

Java,可以创建一个名为"Student"的类作为基础类,包含属性如姓名(name)、各科成绩(grades),然后实现一个计算总成绩的方法。如果需要统计多个学生,可以创建一个"StudentList"类,用于存储并操作学生对象。 下面是一个简单的例子: ```java // 学生基类 Student public class Student { private String name; private double[] grades; // 构造函数 public Student(String name, double... grades) { this.name = name; this.grades = grades; } // 计算总成绩的方法 public double calculateTotalScore() { return Arrays.stream(grades).sum(); } // 获取名字的方法,用于展示 public String getName() { return name; } } // 学生列表 StudentList import java.util.ArrayList; import java.util.List; public class StudentList { private List<Student> students; // 构造函数和添加学生的方法 public StudentList() { students = new ArrayList<>(); } public void addStudent(Student student) { students.add(student); } // 统计所有学生总成绩的方法 public double getTotalScores() { double total = 0; for (Student student : students) { total += student.calculateTotalScore(); } return total / students.size(); // 如果想平均每个学生的总分,这里除以学生数 } } // 使用示例 public static void main(String[] args) { Student student1 = new Student("张三", 85, 90, 92); Student student2 = new Student("李四", 78, 88, 90); StudentList list = new StudentList(); list.addStudent(student1); list.addStudent(student2); double totalScore = list.getTotalScores(); System.out.println("所有学生的平均总成绩: " + totalScore); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值