java学习

泛型方法:

方法中形参不确定时:

方案1:使用类名后面定义的泛型(所有方法都能用)

方案2:在方法申明上定义自己的泛型(只有本方法能用)

泛型接口:

如何使用一个带泛型的接口:

1.实现类给出具体的类型

2.实现类延续泛型,创建实现类对象时再确定类型

泛型的继承和通配符:

泛型不具备继承性,但是数据具备继承性

泛型的通配符:

?表示不确定的类型

?可以进行类型的限定

?extends E:表示可以传递E或者E所有的子类类型

? super E:表示可以传递E或者E所有的父类类型

应用场景:

1.如果我们在定义类、方法、接口的时候,如果类型不确定,就可以定义泛型类、泛型方法、泛型接口

2.如果类型不确定,但是能知道以后能传递某个继承体系中的,就可以使用泛型的通配符

泛型的通配符:

关键点:可以限定类型的范围

左右的情况:先进行局部左旋转化为左左

右左的情况:先进行局部右旋转化为右右

平衡二叉树不是红黑树

平衡二叉树:

高度平衡

当左右子树高度差超过1时,通过旋转保持平衡

红黑树:

是一个二叉查找树

但是不高度平衡

条件:特有的红黑规则

红黑规则

1.每一个节点或是红色的,或者是黑色的

2.根节点必须是黑色

3.如果一个节点没有子节点或者父节点,则该节点相应的指针属性值为Nil,这些Nil视为叶节点,每个叶节点是黑色的

4.如果某个节点时红色,那么它的子节点必须是黑色(不能出现两个红色节点相连的情况)

5.对每一个节点,从该节点到其所有后代叶节点的简单路径上,均包含相同数目的黑色节点

红黑树的添加规则:

默认颜色是红色(效率高)

set:

无序:存取顺序不一致

不重复:可以去重复

无索引:没有带索引的方法,所以不能使用普通for循环遍历,也不能通过索引来获取元素

不重写就用的是地址值

TreeSet集合默认的规则:

对于数值类型:Integger,Double,默认按照从小到大的顺序进行排序

对于字符,字符串类型:按照字符在ASCLL码表中的数字进行升序排序

TreeSet的排序规则:

让类实现comparable接口,重写抽象方法(默认排序)

创建TreeSet对象时候,传递比较器Comparator指定规则(比较器排序)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值