技术文摘
Java 笔试题:集合中按学生年龄升序排列学生信息
2024-12-31 15:38:58 小编
Java 笔试题:集合中按学生年龄升序排列学生信息
在 Java 编程中,经常会遇到需要对集合中的数据进行排序的情况。本次笔试题要求我们按照学生的年龄对学生信息进行升序排列。
让我们来定义一个表示学生的类Student,包含学生的姓名和年龄等属性。
class Student {
private String name;
private int age;
public Student(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
接下来,创建一个包含学生对象的集合,例如使用ArrayList。
import java.util.ArrayList;
import java.util.List;
public class StudentSorting {
public static void main(String[] args) {
List<Student> students = new ArrayList<>();
students.add(new Student("张三", 20));
students.add(new Student("李四", 18));
students.add(new Student("王五", 22));
// 按照年龄升序排列
students.sort((s1, s2) -> s1.getAge() - s2.getAge());
for (Student student : students) {
System.out.println(student);
}
}
}
在上述代码中,我们使用sort方法结合lambda表达式来实现按照年龄升序排列。(s1, s2) -> s1.getAge() - s2.getAge() 这个比较器会比较两个学生对象的年龄,并返回一个整数值,小于零表示 s1 的年龄小于 s2,大于零表示 s1 的年龄大于 s2,等于零表示年龄相等。
通过这种方式,我们能够轻松地对集合中的学生信息按照年龄进行升序排列,并输出排序后的结果。
掌握这种排序技巧对于处理复杂的数据集合非常有用,在实际开发中可以根据不同的需求灵活运用各种排序方式和比较器。希望通过这道笔试题,能够加深您对 Java 集合操作和排序的理解。
- pytest运行输出中E和s的含义是什么
- Go-Electron通信:gRPC与JSON的抉择
- Go语言判断结构体及结构体指针是否为空的方法
- 云VPS托管,优化Python开发环境的关键
- Go Mutex 互斥锁作用范围探究:外部 mutex.Lock() 影响内部 mutex.Lock() 的原因
- Flask框架下利用装饰器实现请求拦截的方法
- Numpy astype(np.float32)后结果仍为float64的原因
- Go语言使用指针传递多类型参数并修改原始值的方法
- 用 numpy.load() 加载含 None 值数组怎样防止报错
- 利用反射与Gorm框架动态生成及修改数据库表和字段的方法
- Go中向嵌套数组添加结构体的方法
- Go语言中向嵌套数组的结构体添加函数的方法
- Streamlit应用
- Flask-SQLAlchemy中metadatas的含义及如何用它简化表声明
- Python自定义日志过滤器无法输出指定级别日志的成因