、在类Network2023中,给自己班级定义一个随机点名方法randomCall()。想想办法如何不让它重复点名。
时间: 2024-09-23 19:16:10 浏览: 43
在类`Network2023`中,为了给班级定义一个随机点名方法`randomCall()`,并且避免重复点名,你可以考虑采用以下策略:
1. **利用集合存储**:创建一个包含学生名字的集合,每次点名后都从这个集合中随机选择一个名字。由于集合不允许重复元素,所以不会重复点名。点名结束后,可以选择性地从集合中移除该学生的姓名,以便下次点名。
```java
import java.util.*;
class Network2023 {
private Set<String> students; // 存储学生姓名
public Network2023(List<String> students) {
this.students = new HashSet<>(students); // 使用HashSet去重
}
public void randomCall() {
if (!students.isEmpty()) {
String selectedStudent = students.iterator().next(); // 随机获取一个学生
System.out.println("现在点到:" + selectedStudent);
students.remove(selectedStudent); // 移除已点名的学生
} else {
System.out.println("所有人已经点过名了");
}
}
}
```
阅读全文