1、自然排序:集合中的类需要实现comparable接口;如果不实现该接口会报类型转换异常 TreeSet集合是用来对其元素进行排序的,同样它也可以保证元素的唯一 使用TreeSet集合来排序,当compareTo方法的返回值为0,表示被比较的元素与比较的元素是同一个对象 2、比较器排序: Stri ...
分类:
编程语言 时间:
2020-02-16 23:24:37
阅读次数:
123
对象排序或比较的场合均需要Comparable接口 public class User implements Comparable<User>{ private String name; private int phone; public String getName() { return name ...
分类:
编程语言 时间:
2020-02-13 19:12:56
阅读次数:
92
1. Comparable接口 在java.lang包下,实现了Comparable函数式接口的对象可以自然排序,而数组和集合实现了该接口,所以我们会用Arrays.sort()或Collections.sort()来排序 Comparable比较大于就返回1,小于返回 1,等于返回0 如果自定义的 ...
分类:
其他好文 时间:
2020-01-12 15:30:36
阅读次数:
88
1.初级排序算法 1.1我们关注的主要对象为重拍数组元素的算法。,其中每个元素有个主键,将主键按照某种方式排列。在java中元素通常都是对象,对主键描述往往通过comparable接口。 一般排序模板 public class Example{ public static void sort(Com ...
分类:
编程语言 时间:
2020-01-12 14:59:26
阅读次数:
92
一、字符串相关类 1.String类 String:字符串,使用一对""引起来表示。1.String类是声明为final的,不可被继承2.String实现了Serializable接口:表示字符串是支持序列化的。 实现了Comparable接口:表示String可以比较大小3.String内部定义了 ...
分类:
编程语言 时间:
2020-01-06 11:15:09
阅读次数:
110
为什么会有Comparable与Comparator接口? 引入策略模式 目录 引入 Comparable接口的来龙去脉 引入Comparator接口 什么是策略模式? 使用了策略模式有什么好处? 引入 大家先考虑一个场景, 有一个整形数组, 我们希望通过调用一个工具类的排序方法就能对该数组进行排序 ...
分类:
其他好文 时间:
2019-12-21 18:28:23
阅读次数:
105
二分搜索树具有以下特点: 1 二分搜索树是一颗二叉树 2 二分搜索树每个节点的左子树的值都小于该节点的值,每个节点右子树的值都大于该节点的值 3 任意一个节点的每棵子树都满足二分搜索树的定义 基于第二点我们的需要插入树的元素实现Comparable接口,下面实现二分搜索树的原型,这个类具有二分搜索树 ...
分类:
其他好文 时间:
2019-12-11 23:15:55
阅读次数:
82
TreeSet:无序,不可重; 底层结构式是红黑树进行存储; 特点:默认从小到大排序; 可以定义比较规则,排序规则,并且可以使用去重原则: 内部比较器|自然排序: 实现Comparable接口,重写comparaTo方法,在方法中定义比较规则.,默认的比较规则; 外部比较器|指定比较器:实现一个Co ...
分类:
编程语言 时间:
2019-12-05 22:27:36
阅读次数:
103
TreeSet 基于 TreeMap 实现,TreeMap 基于红黑树实现 特点: 有序 无重复 添加、删除元素、判断元素是否存在,效率比较高,时间复杂度为 O(log(N)) 使用方式: TreeSet 默认构造方法,调用 add() 方法时会调用对象类实现的 Comparable 接口的 com ...
分类:
其他好文 时间:
2019-11-22 10:42:59
阅读次数:
107
1.什么是Comparable接口 此接口强行对实现它的每个类的对象进行整体排序。此排序被称为该类的自然排序 ,类的 compareTo 方法被称为它的自然比较方法 。实现此接口的对象列表(和数组)可以通过 Collections.sort (和 Arrays.sort )进行自动排序。实现此接口的 ...
分类:
其他好文 时间:
2019-11-16 19:32:50
阅读次数:
77