java 数组与集合学习

数组与集合的区别:

1. 内容:

  数组存储同一种类型的元素,

  集合可以存储不同类型的元素(我们这么做的时候很少)

2. 长度:

  数组 长度固定

  集合长度不固定

3. 元素的数据类型:

   数组可以存储基本类型和引用类型

   集合只能存储引用类型


定义数组的两种方式:

// 我们推荐而且常用第一种
type[] arrayName;
type arrayName[];

数组的初始化方式:

静态初始化:数组初始化时指定每个元的的初始值,系统决定数组长度。

arrayName = new type[] {element1, element2 ... };

动态初始化:数组定义的时候,只初始化数组长度,系统为数组分配初始值。

arrayName = new type[length];

注意:这两种初始化的方式只能用一种,不能同时使用。


了解collection:

集合可以存储多个元素,但是它对元素是有要求的:多个元素不能相同而且能够按照某个规则排序。

它所涉及的方法:

// 添加
boolean add(Object obj): //添加一个元素
boolean addAll(Collection c): //添加一个集合

// 删除
void clear(): //清空全部
boolean remove(Object): //移除一个元素
boolean removeAll(Collection c): //移除一个集合,成功 移除一个元素,返回就是true

// 判断
boolean contains(Object o): //判断是否包含该元素
boolean containsAll(Coolection c): //判断是否包含该集合的所有元素
boolean isEmpty(): //判断集合是否为空

// 获取元素
Iterator<E> iterator():迭代器

// 获取长度
int size():元素个数

// 获取与另一个集合的交集
boolean retainAll(Collection c):

List集合常用的子类有三种:

ArrayList:底层数据结构是数组。线程不安全

LinkedList:底层数据结构是链表。线程不安全

Vector:底层数据结构是数组。线程安全

Set集合常用子类:

HastSet集合:底层数据结构是哈希表(是一个元素为链表的数组)

LinkedHashSet集合:底层数据结构由哈希表和链表组成

TreeSet集合:底层数据结构是红黑树;保证元素的排序方式

简做总结,颗粒归仓!

发布了214 篇原创文章 · 获赞 281 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/lk1822791193/article/details/91351205
今日推荐