java comparator_Java第十三天

Java第十三天

SetTree

底层:红黑树

优点:升序排序,查询效率较高

TreeSet是由TreeMap的key维护的,使用方式相同,但是是键值对的形式

引用数据类型的去重和排序

实现内部

内部比较器 : Comparable 接口 实现Comparable接口重写comparaTo方法,自定义比较规则

外部比较器

外部比较器: Comparator 接口 重写compare方法,自定义比较器

Map

存储的数据都是key,value键值对形式的

key 可以任意数据类型 无序的,唯一的 -->set结合

value 可以任意数据类型 无序的 ,不唯一的 -->Collection结合

一个key只能对应一个value(value可以为集合,集合中存储多个数据)

HashSet是由HashMap维护的,但是HashMap是键值对的形式,初始容量是16,加载因子是0.75

底层是hash表的结构

HashMap的key如果是引用数据类型的对象,做去重要重写hashCode和equals

如果想要实现value去重,需要手动判断

反射

反射是发生在程序运行期间的行为--java的一个动静态机制

1.创建对象的时候,拿到的都是当天前类型Class对象的一个镜像|赋值体

2.在类加载的时候,会在内存中存在当天前类型的一个Class对象,一个类的Class对象中存储这个类的所有信息(属性,方法,构造器...)

3.只要我们能够获取这个类型的Class对象,就可以对这个类做一切操作

Class 类的实例表示正在运行的 Java 应用程序中的类和接口

获取源头(Class对象):

1.对象.getClass()

2.类名.class

3.Class.forName("类的权限命名:包名+类名")

创建对象

1.通过反射创建对象

1)通过反射获取到类中的构造器

2)根据构造器创建对象

构造器Constructor对象.newInstance(实参)方法

直接通过class类的newIntance()方法创建对象,方法没有参数 调用空构造

SetTree

底层:红黑树

优点:升序排序,查询效率较高

TreeSet是由TreeMap的key维护的,使用方式相同,但是是键值对的形式

引用数据类型的去重和排序

实现内部

内部比较器 : Comparable 接口 实现Comparable接口重写comparaTo方法,自定义比较规则

外部比较器

外部比较器: Comparator 接口 重写compare方法,自定义比较器

Map

存储的数据都是key,value键值对形式的

key 可以任意数据类型 无序的,唯一的 -->set结合

value 可以任意数据类型 无序的 ,不唯一的 -->Collection结合

一个key只能对应一个value(value可以为集合,集合中存储多个数据)

HashSet是由HashMap维护的,但是HashMap是键值对的形式,初始容量是16,加载因子是0.75

底层是hash表的结构

HashMap的key如果是引用数据类型的对象,做去重要重写hashCode和equals

如果想要实现value去重,需要手动判断

反射

反射是发生在程序运行期间的行为--java的一个动静态机制

1.创建对象的时候,拿到的都是当天前类型Class对象的一个镜像|赋值体

2.在类加载的时候,会在内存中存在当天前类型的一个Class对象,一个类的Class对象中存储这个类的所有信息(属性,方法,构造器...)

3.只要我们能够获取这个类型的Class对象,就可以对这个类做一切操作

Class 类的实例表示正在运行的 Java 应用程序中的类和接口

获取源头(Class对象):

1.对象.getClass()

2.类名.class

3.Class.forName("类的权限命名:包名+类名")

创建对象

1.通过反射创建对象

1)通过反射获取到类中的构造器

2)根据构造器创建对象

构造器Constructor对象.newInstance(实参)方法

直接通过class类的newIntance()方法创建对象,方法没有参数 调用空构造

e5d445b3070dd71679b12b5b2a414e4f.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值