内隐类——将某类的定义置于另一类定义之中,此即所有内隐类
...
请参阅《java编程思想》p260array比较两种方式:
static void sort(List list) 
 此一,list中对象务必implements Comparable
static void sort(List list, Comparator c) 
 此一,用Comparator做为比较的依据详情请参阅jsdk类说明,及《java编程思想》第9章
 

解决方案 »

  1.   

    array的比较是  比较其中内容,可用equals()书写,
    在比较array元素中,说提供了两种机制,是怎么样实现的,看了书后,还是不明白,小弟愚昧,请指教!
      

  2.   

    你所说的array是不是简单的数组
    还是一个类?
    不太明白你的问题,能否把书上的话说一下
      

  3.   

    是这样说的,java2中提供了两种比较机能,第一个是通过自然比较法,借由实现
    java.lang.Comparable interface,使class具有比较能力,
     说,只有一个函数,compareTo(),接受一个object做为引数,
     第二个就是写一个class,令他实现Comparator interface.他有两个函数,compare()and equals().
    小弟不明白是怎么实现比较的,能不能举个简单的示例!
      

  4.   

    我的理解就是
    java提供了两种比较
    一种是:所有的类从Object父类中继承来的equals()方法
    另一种是:这个类实现了Compareable(可比性)接口这两个方法的区别是:
    1、equals()只判断是否相等,相等返回true,不相等返回false
    2、而实现了实现了Compareable(可比性)接口的类,从这个接口中继承了一个方法compareTo(),这个方法要比equals()方法严格的多,compareTo()方法不仅要能否判断是否相等,还能能够判断谁大谁小例子:
    Integer i1 = new Integer(8);
    Integer i2 = new Integer(2);
    Float f = new Float(5.0);i1.compareTo( i2 )会返回一个正数,表示 i1 > i2;
    i1.compareTo( f ) 会出现运行是错误,这两个对象不属于一个类,不具有可比性;
    i1.equals( f )    会返回一个false,告诉你这两个对象不相等;
    这是我的理解
    如果有错误,请指正^_^