对一个数组进行排序,调用的不是sort方法吗,但是老湿一直在强调String实现Comparable接口的ComoaraTo()。不懂他们之间有什么联系
例1对一个String类型的数组进行排序正常
sort()是排序,comparato()是对两个数据进行比较,想要排序,就需要先比较出两个数据的大小、先后才能有排序结果,这就会用到comparato()。但是你自定义的类型Goods没有实现相应的接口方法,所以无法进行比较。
Arrays的sort方法只对基本类型的数组支持直接排序,对于对象数据的排序,它必须指定按照对象中那个字段来排序,而这个情况是通过Comparable的实现类来告诉Arrays的。
str或者int类型的数组,sort方法内部写好了排序方法,你不用写,直接调用就行,但是如果是复杂的数据类型,比如数组中的数据是一个对象,sort方法是排不了的,需要自己实现Comparable重写一个。