public class Searching {
public static Comparable linearSearch(Comparable[] data, Comparable target){
Comparable result = null;
int index = 0;

while(result == null && index < data.length){
if(data[index].compareTo(target) == 0)
result = data[index];
index++;
}
return result;
}
Comparable是一个接口,在这个查找里为什么好像当成一个类来用?

解决方案 »

  1.   

    并没有错呀, 这是个实现方法,调用的时候肯定不是直接用Comparable调用了,肯定要用实现这个接口的类去调用,这就是多态嘛
    在某种程度上,接口也是类
      

  2.   

    如果接口是类的话,那么它有没有equals()方法
    如果没有
    List list = null;
    list.equals(null);
    为什么不报错
      

  3.   

    这是多态啊,表示所以实现了Comparable的类的对象,多可以是行参