[英]Search in a implementation of LinkedList with Comparator
我有这个界面:
class CustomLinkedList<T> {
public void append(T dado);
public void addFirst(T dado);
public T search(Comparator<T> cmp);
public void printObjects();
}
我需要使用比较器在链接列表中进行搜索,但是比较器具有带有2个参数的compare(obj1,obj2)方法。 这是比较器的示例:
public class SearchByEmail implements Comparator<Student> {
public SearchByEmail(String email) {
// TODO Auto-generated constructor stub
}
@Override
public int compare(Student o1, Student o2) {
// TODO Auto-generated method stub
return 0;
}
}
有人知道如何使用比较器实现搜索方法吗?
一个可怕的例子:
public T search(Comparator<T> cmp) {
Node<T> current = first;
do {
if(cmp.compare(current.getElement(), null) == 0){
return current.getElement();
}
current = current.getNext();
} while (current != null);
return null;
}
和SearchByEmail:
public class SearchByEmail implements Comparator<Student> {
private String email;
public SearchByEmail(String email) {
this.email = email;
}
@Override
public int compare(Student o1, Student o2) {
if(o1.getEmail().equals(email)) return 0;
return 1;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.