泛型再深入:
集合体系都支持泛型
自定义泛型类,方法,接口:
泛型通配符?:
Set:
Hashset:
采用哈希表存储数据
Treeset:
利用treeset,存储的东西一定要能排序,不然会报错,而且treeset会将大小相同的对象看作重复,只保留一个,如果想保留重复的,可以改变比较函数返回值
例子:
TreeSet集合存储对象的的时候有2种方式可以设计自定义比较规则
1.·让自定义的类(如学生类)实现comparable接口重写里面的compareTo方法来定制比较规则。
实例:
2.Treeset集合有参数构造器,可以设置comparator接口对应的比较器对象,来定制比较规则。
浮点数比较运用Double.compare
Collections总结:
可变参数:
在方法的形参上可以接受多个数据
集合工具类collections:
常用api:
批量添加实例:
打乱顺序实例:
List排序:
或者
Map
内部元素成键值对出现,键无序,值可以重复
特点:
Map常用api:
Map遍历方式:
1.键找值
实例:
2.键值对(不推荐)
实例:
异常:
常见异常:
运行异常(程序员个人问题):
编译异常:
异常处理:
编译异常处理:
Throws:
Try catch:
实例:
Trycatch和throw结合:
实例:
运行时异常可以不用管