6-5 求自定类型元素的最大值 (10 分)
时间: 2023-04-18 20:02:22 浏览: 63
题目描述:
给定一个自定义类型的数组,要求找出其中的最大值。
解题思路:
可以通过遍历数组,依次比较每个元素的大小,找出最大值。
代码实现:
假设自定义类型为Person,包含属性name和age,可以按照如下方式实现:
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 int getAge() {
return age;
}
}
public class Main {
public static void main(String[] args) {
Person[] persons = new Person[]{
new Person("张三", 20),
new Person("李四", 25),
new Person("王五", 18)
};
Person maxPerson = persons[];
for (int i = 1; i < persons.length; i++) {
if (persons[i].getAge() > maxPerson.getAge()) {
maxPerson = persons[i];
}
}
System.out.println("最大年龄的人是:" + maxPerson.getName() + ",年龄为:" + maxPerson.getAge());
}
}
输出结果为:
最大年龄的人是:李四,年龄为:25
注意事项:
在比较自定义类型的大小时,需要根据具体的需求来确定比较的方式,例如上述代码中比较的是年龄大小。同时,需要保证自定义类型实现了Comparable接口或者传入了Comparator对象,否则会出现编译错误。