Arrays,comparator,comparable

1.Arrays.toString()

返回数组的内容

输出为:

2.Arrays.copyOfRange()

拷贝数组(指定范围,包前不包后)

输出为:

3.Arrays.copyOf()

拷贝数组,可以指定新数组的长度

输出为:(空余的位置系统用0补齐)

注意点:如果指定的新数组长度<原来的数组长度,则只输出新数组制定长度

4.Arrays.setAll()

把数组中原数据改为新数据再存进去(例子中将数据打了八折)

输出为:

5.Arrays.sort()

对数组进行排序(默认升序)

输出为:

第二行为升序排序

a.对于数据的比较:

Arrays.sort()

b.对于对象的比较:

方法一:让该对象的类实现Comparable(比较规则)接口,然后重写compareTo 方法,自己来制定比较规则

第一点实现接口

第二点重写compareTo(),一个是繁琐的写法,标蓝色的是简写

第三点创建对象,并且用Arrays.sort()排序

注意点:

方法二:使用下面这个sort方法,创建Comparator比较器接口的匿名内部类对象,然后自己制定比较规则

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: comparatorcomparableJava 中用来比较对象大小的两种方式。 comparable 是一个内置接口,用来实现在类内部定义的比较方式。通过实现 comparable 接口,类可以实现其自身的比较方法,可以使用 Collections.sort() 或 Arrays.sort() 进行排序。 comparator 是一个外部比较器,用来实现在类外部定义的比较方式。通过实现 comparator 接口,可以创建一个比较器对象,可以使用 Collections.sort(list, comparator) 或 Arrays.sort(array, comparator) 进行排序。 ### 回答2: ComparatorComparable都是Java中用于比较两个对象大小的接口,但它们之间有一些明显的区别。 ComparableJava中一个内置的接口,它定义了一个compareTo()方法,用于比较两个对象的大小。如果一个类实现了Comparable接口,则可通过调用compareTo()方法比较该类的对象。通常,compareTo()方法返回一个整数值,表示该对象与另一个对象的大小比较结果。如果该值为正整数,则该对象大于另一个对象;如果该值为负整数,则该对象小于另一个对象;如果该值为0,则两个对象相等。 Comparator是另一种用于比较对象大小的接口。与Comparable不同的是,Comparator是一个外部的接口,不会像Comparable一样对实现该接口的类产生依赖。当需要比较两个对象不属于同一种类或者需要按多种标准进行排序时,就可以使用ComparatorComparator定义了一个compare()方法,该方法比较两个对象的大小,并返回比较结果。与Comparable不同的是,compare()方法返回的是一个整数值,而不是boolean值。 简单来说,Comparable是在类的内部实现,用于定义类的默认排序顺序,而Comparator是在类的外部实现,可以为一个类提供多种排序方式。我们可以自定义Comparator的实现,灵活应对排序需求。但是,实现Comparable接口的类只能有一种默认排序方式,不支持多种排序方式的选择。 综上所述,ComparatorComparable的使用取决于具体的业务需求和条件,二者各有优缺点,我们需要对其进行把握,选择合适的使用方式。 ### 回答3: 在Java编程中,程序员经常会用到比较两个对象的值是否相等。为此,Java提供了两个主要的接口,ComparatorComparableComparable接口是Java中一个内置的接口,它是用来实现对象之间的比较的。它可以让一个类实现该接口,从而让该类的对象具有比较能力。Comparable接口中只有一个方法compareTo(Object o),用来比较当前对象和传入的对象o的大小。在实现Comparable接口的实现类中,compareTo方法根据业务需求自定义比较规则,实现对象之间的比较,并根据比较结果返回一个整数值。如果当前对象比传入对象o小,则返回一个负整数;如果当前对象比传入对象o大,则返回一个正整数;如果两个对象相等,则返回0。 Comparator接口是Java中另一个内置的接口,它是用来定义对象之间比较规则的。Comparator接口中包含两个方法:compare(Object o1, Object o2)和equals(Object obj)。其中,compare方法与Comparable接口的compareTo方法类似,用来比较两个对象的大小,但与之不同的是,compareTo方法是在对象内部实现的,而compare方法是在外部实现的。这个方法通常是用来对集合中的元素进行排序。而equals方法则用来判断对象是否相等。 总之,ComparatorComparable接口都是用来比较两个对象的大小的,但在实际运用中,它们有不同的作用。Comparable接口适用于实现了该接口的类对象比较;而Comparator接口则适用于对不同类型的对象进行比较或实现更复杂的比较规则。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值