我有一个任务,添加一个lambda表达式来比较学生ID和学生姓名。 这是实验室:
在本实验中,您将学习如何处理数据定义之间的简单引用。您 将能够创建和操作嵌套类。 使用以下内容创建一个Student类: 一个名为“ name”的私有String变量,用于存储学生的姓名 名为“ UFID”的私有整数变量,其中包含以下项的唯一ID号: 这个学生 名为“ DOB”的私有String变量,用于存储学生的出生日期 一个公共构造函数Student(字符串名称,int UFID,字符串dob) 所有属性的几种公共获取/设置方法 o getName / setName o getUFID / setUFID o getDob / setDob
学生通常与学院有联系。我们要添加一个大学课程, 在每个学生中添加一个包含教师信息的字段。 将以下数据定义转换为Java。每个系由一个 名称和字符串变量校园。 编辑您的Student班级,以在Faculty上包含一个类型为Faculty的字段。 将setFaculty方法添加到Student类。该方法分配学生 到给定的教职员工-(教职员工名称)和校园。 在学生的inCampus中编写一个使用String,校园名称, 并产生一个布尔值,指示学生的校园是否与 给定的校园。
将接口IStudentComparator添加到您的项目中。
interface IStudentComparator (
public boolean compare(Student s1, Student s2);
)
定义lambda表达式以基于以下条件比较两个学生: o学生证 o学生姓名
我从创建学生班开始:
public class student {
private String name;
private int UFID;
private String DOB;
private student.faculty fac= new faculty();
public student(String N,int Ufid,String dob) {
}
class faculty {
public String name;
public String campus;
}
public String getName() {
return name;
}
public void setName(String N) {
this.name = N;
}
public int getUFID() {
return UFID;
}
public void setName(int N) {
this.UFID = N;
}
public String getDOB() {
return DOB;
}
public void setDOB(String N) {
this.DOB = N;
}
public void setfaculty(String faculty, String Campus) {
fac.name = faculty;
fac.campus = Campus;
}
public boolean inCampus(String campusname) {
if (campusname == fac.campus) {
return true;
}
return false;
}
}
` 然后我创建了界面
interface IStudentComparator {
@Override
public boolean compares(student s1, student s2) {
Comparator<student> byName =
(student o1, student o2)->s1.getName().compareTo(s2.getName());
if(byName.equals(0)
{
return true;
}
return false;
}
这是主要内容:
public class Lab11 {
public static void main(String[] args) {
student s = new student("gabi",1,"4");
s.setDOB("2");
s.setName("gab");
s.setfaculty("Ua","genie");
boolean answer = s.inCampus("genie");
System.out.println(answer);
}
}
如果我比较2个学生,我希望函数返回true或false
感谢帮助