2月11日笔记

一.泛型

1.简介

想写入基本数据类型就要写成包装类的形式

2.泛型类

3.泛型方法

方法申明上定义泛型的示例如下

4.泛型接口

方式一代码实现

MyArrayList继承了List接口,是这个接口的实现类,泛型写的是string,所以添加数据时只能添加string类型的数据.添加"abc"类的字符串就会报错

方式二的代码实现

注意第二种方式与第一种的格式区别

一旦在创建对象后已经确定了E的数据类型,那以后的数据类型都会是这个数据类型

5.泛型的继承

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

代码示例如下

首先有一个爷,父.子继承结构,

此时分别创建三个类的对象,但由于泛型不具备继承性,所以后两个是不可以添加进集合里的

但是数据具备继承性,可以添加

如果想要使任意的数据类型都可以添加进集合里,可以采取泛型方法(E)来实现

6.泛型的通配符

二.数据结构(续)

1.树

二叉树
二叉查找树

节点添加规则

二叉树遍历方式

前序遍历

中序遍历

后序遍历

层序遍历

平衡二叉树
平衡二叉树添加规则

和二叉查找树一样

平衡二叉树旋转机制

自己看视频吧总结不了太碎了

平衡二叉树需要旋转的情况

左左

左右

右右

右左

不同情况的解决方法

红黑树

红黑规则

红黑树添加规则

三.set系列集合

1.HashSet

哈希值

HashSet底层原理

看视频去吧总结不了

注意点:

在HashSet中存入自定义对象时,如果不重写equal和Hashcode方法,存入数据时就会那地址值进行比较,就不能达到不重复的效果.

2.LinkedHashcode

一般用的方法就是collection里的方法,

3.treeset

TreeSet排序规则

对于字符串排序,会对字母进行一个一个比较,只要发现大的就排后面,不管后面有什么

TreeSet底层的数据结构是红黑树,忘了再去看视频

TreeSet关于对象的排序方法
方法一

先继承这个接口,但这个接口带泛型,需要根据泛型接口那里的知识进行选择

再重写里面的方法

方法二

注意:这里的compareTo就是不对对象进行排序时使用的方式

四.集合大总结

相关推荐
三品吉他手会点灯1 分钟前
嵌入式机器学习 - 学习笔记1.2.3 - 机器学习软件框架
人工智能·笔记·嵌入式硬件·学习·机器学习
AgCl231 小时前
JavaWeb个人笔记01--Maven到MyBatis
笔记·maven·mybatis
xian_wwq3 小时前
【学习笔记】多模态部署:VLM、语音、视频理解(29/35)
笔记·学习·音视频
hengcaib17 小时前
防封号电销外包公司怎么选合规线路与风控核查方法
笔记
六点_dn20 小时前
Linux学习笔记-shell运算符
linux·笔记·学习
降临-max21 小时前
软件测试基础---项目实战
软件测试·笔记·功能测试·测试用例
鱼子星_1 天前
【C++】内存管理:内存分布,new/delete的使用及细节处理,new/delete的底层,定位new表达式
开发语言·c++·笔记
愚昧之山绝望之谷开悟之坡1 天前
回购逆回购
笔记
鱼子星_1 天前
【C++】string(上):string的基本使用
c++·笔记·字符串
AOwhisky1 天前
Python 学习笔记(第四期)——字符串:格式化、操作与文本处理——核心知识点自测与详解
开发语言·笔记·python·学习·列表·元组·字典