(4)在Util类中编写方法:public static String searchName(List nameList, String name);,根据指定的name返回相应的字符串,如果没有找到返回null。 (5)在Util类中编写方法:public static Student searchStudent(Map stuMap, String name);,根据指定的name返回对应的学生,如果没有找到返回null。 (6)在Util类中编写方法:public static List generateNameList(int n);,生成n个字符串的NameList并返回。 (7)在Util类中编写方法:Map generateStudentMap(int n);,生成包含n个键的的StudentMap并返回。 说明:调用getRandomStudents方法;调用makeStudentMap方法;返回StudentMap。
时间: 2023-06-24 09:03:28 浏览: 70
代码实现如下:
```
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Util {
// (4) 根据指定的name返回相应的字符串,如果没有找到返回null
public static String searchName(List<String> nameList, String name) {
for (String str : nameList) {
if (str.equals(name)) {
return str;
}
}
return null;
}
// (5) 根据指定的name返回对应的学生,如果没有找到返回null
public static Student searchStudent(Map<String, Student> stuMap, String name) {
if (stuMap.containsKey(name)) {
return stuMap.get(name);
}
return null;
}
// (6) 生成n个字符串的NameList并返回
public static List<String> generateNameList(int n) {
List<String> nameList = new ArrayList<>();
for (int i = 0; i < n; i++) {
nameList.add(getRandomName());
}
return nameList;
}
// (7) 生成包含n个键的的StudentMap并返回
public static Map<String, Student> generateStudentMap(int n) {
Map<String, Student> stuMap = new HashMap<>();
for (int i = 0; i < n; i++) {
String name = getRandomName();
int age = getRandomAge();
int score = getRandomScore();
stuMap.put(name, new Student(name, age, score));
}
return stuMap;
}
// 获取随机姓名
private static String getRandomName() {
String[] firstName = {"张", "王", "李", "赵", "孙", "钱", "周", "吴", "郑", "冯"};
String[] lastName = {"明", "强", "华", "飞", "丽", "娜", "洋", "亮", "刚", "峰"};
String name = firstName[(int) (Math.random() * 10)] + lastName[(int) (Math.random() * 10)];
return name;
}
// 获取随机年龄
private static int getRandomAge() {
return (int) (Math.random() * 10) + 15;
}
// 获取随机成绩
private static int getRandomScore() {
return (int) (Math.random() * 50) + 50;
}
}
```
阅读全文