java中集合与泛型在实际开发中的案例详解?
时间: 2024-12-14 22:29:31 浏览: 13
在Java中,集合(Collection)和泛型(Generics)是Java集合框架(Java Collection Framework)的重要组成部分。它们在开发实际应用中发挥着重要的作用。以下是一些使用Java集合和泛型进行实际开发案例的详解:
案例一:使用ArrayList存储学生信息
假设我们有一个学生类(Student),包含姓名(name)、年龄(age)和学号(id)等属性。我们想要创建一个ArrayList来存储这些学生对象。我们可以使用ArrayList的泛型版本ArrayList<Student>来存储学生对象。
代码示例:
```java
import java.util.ArrayList;
public class StudentList {
private ArrayList<Student> students = new ArrayList<>();
public void addStudent(Student student) {
students.add(student);
}
public void printStudents() {
for (Student student : students) {
System.out.println("姓名:" + student.getName() + ", 年龄:" + student.getAge() + ", 学号:" + student.getId());
}
}
}
```
在上述代码中,我们使用ArrayList的泛型版本ArrayList<Student>来创建一个存储学生对象的ArrayList。通过使用泛型,我们可以确保我们存储的是Student对象,并且可以通过类型安全的方式来访问和操作这些对象。
案例二:使用HashMap存储学生成绩
假设我们有一个学生类(Student)和一个成绩类(Score),并且每个学生都有对应的成绩。我们想要创建一个HashMap来存储学生和对应的成绩。我们可以使用HashMap的泛型版本HashMap<Integer, Score>来存储学生和成绩之间的映射关系。
代码示例:
```java
import java.util.HashMap;
import java.util.Map;
public class StudentScoreMap {
private HashMap<Integer, Score> scores = new HashMap<>();
public void addScore(Integer studentId, Score score) {
scores.put(studentId, score);
}
public void printScores() {
for (Map.Entry<Integer, Score> entry : scores.entrySet()) {
System.out.println("学生ID:" + entry.getKey() + ", 成绩:" + entry.getValue());
}
}
}
```
在上述代码中,我们使用HashMap的泛型版本HashMap<Integer, Score>来创建一个存储学生成绩的HashMap。通过使用泛型,我们可以确保我们存储的是Score对象,并且可以通过类型安全的方式来访问和操作这些对象。同时,我们还可以通过学生的ID来快速查找对应的成绩。
阅读全文