You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java数组开发需求:打印指定学生Artan信息并计算平均年龄

解决你的Java学生数组需求

嘿,我来帮你搞定这两个功能!首先我先假设你的Student类已经定义了姓名和年龄属性,并且提供了对应的getName()和getAge() getter方法(如果还没写,我会在下面补一个基础的Student类示例)。

1. 打印姓名为Artan的学生信息

要实现这个功能,我们需要遍历整个学生数组,逐个检查学生的姓名是否等于"Artan"。这里要注意字符串比较一定要用equals()方法,而不是==——因为==比较的是对象引用,不是字符串的实际内容,新手很容易踩这个坑。

代码示例:

// 遍历学生数组
for (Student student : students) {
    // 检查姓名是否匹配
    if ("Artan".equals(student.getName())) {
        // 打印学生信息,这里假设你已经重写了Student的toString()方法
        System.out.println("找到Artan的信息:" + student);
        // 如果确定只有一个叫Artan的学生,找到后可以加break节省遍历时间
        // break;
    }
}

如果你的Student类还没重写toString(),可以直接输出具体属性:

System.out.println("姓名:" + student.getName() + ",年龄:" + student.getAge());

2. 计算所有学生的平均年龄

这个功能需要先累加所有学生的年龄总和,再除以学生总数。为了避免整数除法导致的精度丢失(比如总和是251,10个学生,整数除法会得到25,但实际平均是25.1),我们可以把总和转成double类型再计算。

代码示例:

int totalAge = 0;
// 遍历累加所有学生的年龄
for (Student student : students) {
    totalAge += student.getAge();
}
// 转成double计算平均,保证精度
double averageAge = (double) totalAge / students.length;
System.out.println("所有学生的平均年龄为:" + averageAge);

完整示例代码

如果你还没有完整的Student类和测试代码,这里给你一个可直接运行的版本:

class Student {
    private String name;
    private int age;

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

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

    public int getAge() {
        return age;
    }

    // 重写toString()方便打印学生信息
    @Override
    public String toString() {
        return "Student{name='" + name + "', age=" + age + "}";
    }
}

public class StudentDemo {
    public static void main(String[] args) {
        // 创建包含10个学生的数组(示例数据)
        Student[] students = {
                new Student("Alice", 18),
                new Student("Artan", 20),
                new Student("Bob", 19),
                new Student("Charlie", 21),
                new Student("David", 18),
                new Student("Eve", 20),
                new Student("Frank", 19),
                new Student("Grace", 22),
                new Student("Heidi", 18),
                new Student("Ivan", 20)
        };

        // 功能1:打印Artan的信息
        System.out.println("=== 姓名为Artan的学生信息 ===");
        for (Student student : students) {
            if ("Artan".equals(student.getName())) {
                System.out.println(student);
                break; // 确定唯一的话加break更高效
            }
        }

        // 功能2:计算平均年龄
        System.out.println("\n=== 所有学生的平均年龄 ===");
        int totalAge = 0;
        for (Student student : students) {
            totalAge += student.getAge();
        }
        double averageAge = (double) totalAge / students.length;
        System.out.println("平均年龄:" + averageAge);
    }
}

这段代码运行后会输出:

=== 姓名为Artan的学生信息 ===
Student{name='Artan', age=20}

=== 所有学生的平均年龄 ===
平均年龄:19.5

内容的提问来源于stack exchange,提问作者Artan Mehmeti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 10:03:18