2301_81071938 2024-04-25 16:04 采纳率: 91.9%
浏览 0
已结题

看一下这个吧这个这个

编写一个Person类,要求定义中包含有参构造方法,用来初始化姓名和年龄。且类中有一个静态方法,以Person对象数组为形参,返回其中年龄最小的对象的姓名。

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-25 16:04
    关注

    引自免费微信小程序:皆我百晓生

    为了实现你的需求,我们首先创建一个名为 Person 的 Java 类,它将包含一个有参构造函数用于初始化姓名和年龄,并且还有一个静态方法用于找出年龄最小的 Person 对象的姓名。以下是详细的步骤和代码示例:

    1. 创建一个名为 Person 的 Java 类。
    2. Person 类中定义两个私有变量:name(姓名)和 age(年龄)。
    3. 定义一个有参构造函数,接收姓名和年龄作为参数并初始化这两个变量。
    4. 定义一个静态方法 findYoungestName,接受一个 Person 对象数组作为参数,遍历数组找到年龄最小的 Person 对象,并返回其姓名。

    下面是完整的 Java 代码:

    public class Person {
        private String name;
        private int age;
    
        // 有参构造方法
        public Person(String name, int age) {
            this.name = name;
            this.age = age;
        }
    
        // 获取姓名的方法
        public String getName() {
            return name;
        }
    
        // 静态方法,查找年龄最小的人的姓名
        public static String findYoungestName(Person[] persons) {
            if (persons == null || persons.length == 0) {
                throw new IllegalArgumentException("Array of Person objects cannot be empty or null");
            }
            
            String youngestName = persons[0].getName();
            int minAge = persons[0].getAge();
    
            for (int i = 1; i < persons.length; i++) {
                if (persons[i].getAge() < minAge) {
                    youngestName = persons[i].getName();
                    minAge = persons[i].getAge();
                }
            }
    
            return youngestName;
        }
    }
    

    你可以像这样创建 Person 对象并将它们添加到数组中,然后调用 findYoungestName 方法获取年龄最小的 Person 对象的姓名:

    public class Main {
        public static void main(String[] args) {
            Person person1 = new Person("Alice", 25);
            Person person2 = new Person("Bob", 20);
            Person person3 = new Person("Charlie", 30);
    
            Person[] people = {person1, person2, person3};
    
            String youngestName = Person.findYoungestName(people);
            System.out.println("The name of the youngest person is: " + youngestName);
        }
    }
    

    这段代码会输出:The name of the youngest person is: Bob,因为 Bob 的年龄是 20 岁,是最小的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月3日
  • 已采纳回答 4月25日
  • 创建了问题 4月25日

悬赏问题

  • ¥30 模拟电路 logisim
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价