java程序设计题目及代码

admin 24 0

**Java程序设计题目及代码详解**

**一、题目**:

编写一个Java程序,实现以下功能:

1. 定义一个名为`Student`的类,包含`name`(姓名)、`age`(年龄)和`score`(成绩)三个属性,以及相应的构造方法和getter、setter方法。

2. 在`main`方法中,创建一个`Student`对象数组,存储多个学生信息。

3. 遍历数组,输出每个学生的姓名、年龄和成绩。

4. 编写一个方法,用于计算并返回数组中所有学生的平均成绩。

**二、代码及详解**:

// 定义Student类
public class Student {
    private String name; // 姓名
    private int age; // 年龄
    private double score; // 成绩

    // 构造方法
    public Student(String name, int age, double score) {
        this.name = name;
        this.age = age;
        this.score = score;
    }

    // getter和setter方法
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public double getScore() {
        return score;
    }

    public void setScore(double score) {
        this.score = score;
    }
}

// 主类
public class Main {
    public static void main(String[] args) {
        // 创建Student对象数组
        Student[] students = new Student[3];
        students[0] = new Student("张三", 20, 85.5);
        students[1] = new Student("李四", 21, 90.0);
        students[2] = new Student("王五", 19, 78.0);

        // 遍历数组,输出学生信息
        for (Student student : students) {
            System.out.println("姓名:" + student.getName() + ",年龄:" + student.getAge() + ",成绩:" + student.getScore());
        }

        // 计算平均成绩并输出
        double averageScore = calculateAverageScore(students);
        System.out.println("所有学生的平均成绩为:" + averageScore);
    }

    // 计算平均成绩的方法
    public static double calculateAverageScore(Student[] students) {
        double sum = 0;
        for (Student student : students) {
            sum += student.getScore();
        }
        return sum / students.length;
    }
}

**代码详解**:

1. **定义Student类**:我们定义了一个名为`Student`的类,用于表示学生信息,该类包含三个私有属性:`name`(姓名)、`age`(年龄)和`score`(成绩),我们为这些属性提供了相应的构造方法、getter和setter方法,以便在后续代码中创建和修改学生对象。

2. **创建Student对象数组**:在`main`方法中,我们创建了一个`Student`对象数组`students`,并初始化了三个学生对象,每个对象通过调用`Student`类的构造方法进行创建,并传入相应的参数(姓名、年龄和成绩)。

3. **遍历数组并输出学生信息**:接下来,我们使用for-each循环遍历`students`数组,在循环体内,我们通过调用学生对象的getter方法获取其姓名、年龄和成绩,并使用`System.out.println`方法将这些信息输出到控制台。

4. **计算平均成绩**:为了计算所有学生的平均成绩,我们定义了一个名为`calculateAverageScore`的静态方法,该方法接受一个`Student`对象数组作为参数,遍历数组中的每个学生对象,累加其成绩,并返回成绩总和除以学生数量的结果,在`main`方法中,我们调用该方法并传入`students`数组,将返回的平均成绩输出到控制台。

**三、总结**

本题目是一个典型的Java面向对象编程题目,涉及类的定义、对象的创建与操作、数组的使用以及方法的编写与调用,通过本题目的练习,我们可以加深对Java面向对象编程的理解,提高编程实践能力,在实际开发中,类似的学生信息管理功能是非常常见的,因此掌握本题目的解法对于提升我们的编程技能具有重要意义。