有2个问题,请教大家:
1.接口中public interface Comparator<T>{
..}这里的<T>什么意思,我怎么没有这样用过.
2.为什么实现以下这个接口,不用实现接口中所有的方法,谢谢.
package java.util;public interface Comparator<T> { int compare(T o1, T o2);
boolean equals(Object obj);
}
我的实现代码:
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;public class MyComparator implements Comparator {
public int compare(Object o1, Object o2) {
Map m = new HashMap();
m.put("ORGANH001","4");
m.put("ORGANH002","2");
m.put("ORGANH003","15");
m.put("ORGANH004","5");
m.put("ORGANH005","3");
String seq1=(String)m.get(o1);
String seq2=(String)m.get(o2);
if(Integer.parseInt(seq1)>Integer.parseInt(seq2))return -1;
else if(Integer.parseInt(seq1)<Integer.parseInt(seq2))return 1;
else return 0;
}
}
没有报告任何错误,为什么不用实现Comparator 中定义的equals方法呢,谢谢.
1.接口中public interface Comparator<T>{
..}这里的<T>什么意思,我怎么没有这样用过.
2.为什么实现以下这个接口,不用实现接口中所有的方法,谢谢.
package java.util;public interface Comparator<T> { int compare(T o1, T o2);
boolean equals(Object obj);
}
我的实现代码:
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;public class MyComparator implements Comparator {
public int compare(Object o1, Object o2) {
Map m = new HashMap();
m.put("ORGANH001","4");
m.put("ORGANH002","2");
m.put("ORGANH003","15");
m.put("ORGANH004","5");
m.put("ORGANH005","3");
String seq1=(String)m.get(o1);
String seq2=(String)m.get(o2);
if(Integer.parseInt(seq1)>Integer.parseInt(seq2))return -1;
else if(Integer.parseInt(seq1)<Integer.parseInt(seq2))return 1;
else return 0;
}
}
没有报告任何错误,为什么不用实现Comparator 中定义的equals方法呢,谢谢.
<T> 是范型编程知识点,表示某个特定的类别