计算机二级Java语言入门(二十一)
树图思维导图提供 计算机二级Java语言入门(二十一) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(二十一) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:c32f739dbed5eb20f33876e62b0d33a5
计算机二级Java语言入门(二十一)思维导图模板大纲
Sort不知道规则,所以无法比较
定义排序规则
java.lang下面有一个接口
Comparable(可比较的)
方法comparableTo(Object o)
其规则是当前对象与o对象进行比较,其返回一个int值,系统根据此值来进行排序
当前对象>o对象,则返回值>0;(可将返回值定义为1)
当前对象=o对象,则返回值=0;
当前对象<o对象,则返回值〈0。(可将返回值定义为-1)
我们通过返回值1和-1位置的调换来实现升序和降序排列的转换
java.util下有一个Comparator(比较器)
它拥有compare(),用来比较两个方法
要生成比较器,则用Sort中Sort(List,List(Compate))
第二种方法更灵活,且在运行的时候不用编译
注意
要想实现comparTo()就必须在主方法中写上implement comparable
ArrayList无此类方法
addFirst(); removeFirst(); addLast(); removeLast();
在堆栈中,push为入栈操作,pop为出栈操作
Push用addFirst();pop用removeFirst(),实现后进先出
用isEmpty()--其父类的方法,来判断栈是否为空
Put用addFirst(),get用removeLast()实现队列
put为入队列操作,get为出队列操作
List接口的实现类(Vector)(与ArrayList相似,区别是Vector是重量级的组件,使用使消耗的资源比较多。)
结论
在考虑并发的情况下用Vector(保证线程的安全)
在不考虑并发的情况下用ArrayList(不能保证线程的安全)
遍历一个Set的方法只有一个
迭代器(interator)
HashSet中元素是无序的(这个无序指的是数据的添加顺序和后来的排列顺序不同),而且元素不可重复
Object中除了有final(),toString(),equals(),还有hashCode()
HashSet底层用的也是数组
数组中利用add(Object o)添加对象的时候,系统先找对象的hashCode: int hc=o.hashCode(); 返回的hashCode为整数值
结论
如将自定义类用hashSet来添加对象,一定要覆盖hashcode()和equals(),覆盖的原则是保证当两个对象hashcode返回相同的整数,而且equals()返回值为True
树图思维导图提供 计算机二级Java语言入门(二十) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(二十) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:cf10cbf2649d25ff4c6a7de398208170
树图思维导图提供 计算机二级Java语言入门(十九) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级Java语言入门(十九) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:d9f87184f87c16375a1f5863598ae9b4