java中创建实体类Emp 包含名字年龄性别毕业学校 然后创建对象 给名字赋值为A-Z字母开头 加上0-1000的随机数 年龄15-30的随机数 相别随机男和女 毕业院校可选为虹猫农大湘南中南大学软件学院 然后插入300条数据存入emptxt文件中 按行写入 以nameagegenderschool存入 接下来读
import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random;
public class Emp { private String name; private int age; private String gender; private String school;
public Emp(String name, int age, String gender, String school) {
this.name = name;
this.age = age;
this.gender = gender;
this.school = school;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getGender() {
return gender;
}
public String getSchool() {
return school;
}
public static void main(String[] args) {
List<Emp> empList = new ArrayList<>();
Map<String, Emp> empMap = new HashMap<>();
Random random = new Random();
String[] schools = {"虹猫", "农大", "湘南", "中南大学", "软件学院"};
try (FileWriter fw = new FileWriter("emp.txt")) {
for (int i = 0; i < 300; i++) {
String name = (char) (random.nextInt(26) + 'A') + "" + random.nextInt(1000);
int age = random.nextInt(16) + 15;
String gender = random.nextBoolean() ? "男" : "女";
String school = schools[random.nextInt(schools.length)];
Emp emp = new Emp(name, age, gender, school);
empList.add(emp);
empMap.put(name, emp);
fw.write(emp.getName() + "," + emp.getAge() + "," + emp.getGender() + "," + emp.getSchool() + "\n");
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("所有元素存入map集合中:");
for (String key : empMap.keySet()) {
System.out.println(key + ":" + empMap.get(key));
}
Collections.sort(empList, (o1, o2) -> o1.getAge() - o2.getAge());
System.out.println("\n按照年龄排序后的元素:");
for (Emp emp : empList) {
System.out.println(emp.getName() + ":" + emp.getAge());
}
System.out.println("\n所有中南大学的信息:");
for (Emp emp : empList) {
if (emp.getSchool().equals("中南大学")) {
System.out.println(emp.getName() + ":" + emp.getAge() + ":" + emp.getGender() + ":" + emp.getSchool());
}
}
System.out.println("\n只要年龄小于20岁的,并且不要第一个:");
for (int i = 1; i < empList.size(); i++) {
Emp emp = empList.get(i);
if (emp.getAge() < 20) {
System.out.println(emp.getName() + ":" + emp.getAge() + ":" + emp.getGender() + ":" + emp.getSchool());
}
}
System.out.println("\n只要名字中只有两个字符的:");
for (Emp emp : empList) {
if (emp.getName().length() == 3) {
System.out.println(emp.getName() + ":" + emp.getAge() + ":" + emp.getGender() + ":" + emp.getSchool());
}
}
System.out.println("\n所有的大学名字:");
for (String school : schools) {
System.out.println(school);
}
System.out.println("\n所有来自虹猫的学院,按年龄倒序输出:");
for (int i = empList.size() - 1; i >= 0; i--) {
Emp emp = empList.get(i);
if (emp.getSchool().equals("虹猫")) {
System.out.println(emp.getName() + ":" + emp.getAge() + ":" + emp.getGender() + ":" + emp.getSchool());
}
}
int count = 0;
for (Emp emp : empList) {
if (emp.getSchool().equals("湘南")) {
count++;
}
}
System.out.println("\n湘南学生的人数:" + count);
Emp maxAgeEmp = null;
for (Emp emp : empList) {
if (emp.getSchool().equals("农大")) {
if (maxAgeEmp == null || emp.getAge() > maxAgeEmp.getAge()) {
maxAgeEmp = emp;
}
}
}
System.out.println("\n农大年龄最大的学生:" + maxAgeEmp.getName() + ":" + maxAgeEmp.getAge() + ":" + maxAgeEmp.getGender() + ":" + maxAgeEmp.getSchool());
Emp minAgeEmp = null;
for (Emp emp : empList) {
if (emp.getSchool().equals("农大")) {
if (minAgeEmp == null || emp.getAge() < minAgeEmp.getAge()) {
minAgeEmp = emp;
}
}
}
System.out.println("\n农大年龄最小的学生:" + minAgeEmp.getName() + ":" + minAgeEmp.getAge() + ":" + minAgeEmp.getGender() + ":" + minAgeEmp.getSchool());
System.out.println("\n学生名字长度为4的所有学生信息:");
for (Emp emp : empList) {
if (emp.getName().length() == 4) {
System.out.println(emp.getName() + ":" + emp.getAge() + ":" + emp.getGender() + ":" + emp.getSchool());
}
}
}
@Override
public String toString() {
return age + ":" + gender + ":" + school;
}
原文地址: https://www.cveoy.top/t/topic/hiEC 著作权归作者所有。请勿转载和采集!