Java SE集合,数组学习知识点总结。

包装类
8种基本数据类型 对应8个包装类

1.构造方法
2.static integer valueof(int nuw)

自动装箱
把基本数据类型包装成引用数据类型
自动拆箱
把引用数据类型装还成基本数据类型

数组和集合的区别
区别1:
数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类型存储是值,引用数据类型存储的是地址值
集合只能在存储引用数据类型(对象)集合种也可以存储基本数据类型,但是在存储的时候会自动装箱变成对象

区别2:
数组长度是固定的,不能自动增长
集合的长度是可变的,可以跟据元素的增长而增加

集合:
单列集合:Connection
list:有序可重复
set:无序,不可重复
双列集合:Map
hashMap

集合体系图(重点)
Collection:
创建:无法直接创建,必须通过实现类(arrlist)

方法:
boolean add(E,e);添加指定元素
void clear()清楚集合内所有元素
boolean contains(object o):判断集合中是否包含某种元素
boolean isEmpty():判断集合是否为空
boolean remove(object o)移除指定元素
int size();返回集合长度

List:
有序,可重复的collection

遍历方式
1.迭代器
2.普通for循环

创建:
接口不能直接创建,通过实现类ArrayList创建

viid add(int index, e element);将指定元素添加到指定位置
E remove(int index);移除指定位置的元素返回被移除元素
E ste(int index, E element);用指定元素替换集合中指定位置的元素,返回被替换元素
object totrray

20190320笔记
解决病发修改异常
当使用迭代器遍历时,对集合进行增删的操作,就会产生病发修改异常
1.for循环
2.使用子接口

3月21笔记
由于集合可以存储任意数据类型对象,就有可能在强转的时候发生异常
java为了解决这个问题,为我们提供了一种机制,泛型
泛型:一种广泛的类型,把明确数据类型的工作提前到编译时期,借鉴了数组的

泛型的好处:
1.避免数据类型转换异常
2.减少黄色警告线,黄色警告线表示地方可能有出错
3.简化代码

什么时候使用泛型?
当API中出现了 ,时使用泛型

增强for(foreach):
用来遍历集合和数组
格式:
for(数据类型 变量名:collection集合或数组){
}

原理:内部实现原理是一个迭代器,所以只能遍历不能增删

数组-------------------------------------------------------------------------------------------------
常见数据结构:
1数组
int[]arr =new int[5];
特点:
1.长度不可变
2.数据类型一致
3.元素都有整数索引
4.基本数据类型,引用数据类型
获取元素3?
通过arr[2];
在3这个元素后面,添加6到数组
1.新创建的一个数组,长度是原数组长度+1
2.遍历原数组,并插入到新数组
3.当遇到一个元素3时,在其后面添加一个新元素6
4.剩余元素添加到6后即可

查询快,增删慢

2.链表
由链子连起来的一堆节点
节点:地址值,值,下一个地址值

获取【3】遍历链表然后一个一个查

查询慢,增删快

3.栈
先进后出,后进先出

4.队列
先进先出 ,后进后出

vector是list的子类
queue对列数据接口

LinkedList
底层是链表
创建:LinkedList()

特有方法:
void addFirst(E e )将指定元素添加到头部
void addLast(E e)将指定元素添加到尾部
E getFirst()获取集合第一个元素
E getLast()获取集合最后一个元素

你可能感兴趣的:(Java知识点,java学习)