博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Collection接口
阅读量:5050 次
发布时间:2019-06-12

本文共 884 字,大约阅读时间需要 2 分钟。

Collection接口

List集合(有序集合,具有索引取值,可重复集合。【元素存储和取是相同】)

数据结构

堆栈:先进后出。(弹夹添加子弹)

队列:先进先出。(过安检)

数组:查询速度快,可以通过索引查询,增删性能慢 (添加或者删除都得先建一个数组)

链表:查找慢,增删速度快(排队)

ArrayList:

1.ArrayList是通过数组实现,一旦实例化ArrayList无参构造函数默认长度是10

2.add方法添加元素时如果超出10个元素,ArrayList底层会新生一个数字长度,数字的长度是原来的1.5倍加1,然后吧原来的的数组内容添加到新的数字中,新数组无法容纳的时候会重复改过程扩容。扩容数字调用Arrays.copyof(objArr,objArr.length+1);

LinkenList

LinkeList是双向链表组成的。且头结点中不存放数据

 ArrayList:

底层数据结构是数组,查询快,增删慢

线程不安全,效率高

LinkedList:

底层数据结构是链表,查询慢,增删快

线程不安全,效率高

set集合,不可重复,没有索引(取只能用迭代器取值)

 

Set接口实现类HashMap

自身特点:(哈希值就是new出来值JVM就已经赋予十进制的数,继承父类可修改哈希值)

底层数据结构哈希表,单向链表(只能从上往下记录数据)

线程不安全集合,运行速度块

允许存储null值,null键

无序集合,存储和取出的顺序不同

为保证作为键对象的唯一性,键对象必须实现hashCode,equals方法。

Set的实现类HashSet的子类LinkedHashSet

LinkedHashSet

底层是哈希表,是双向链(双向记录数据)

有序,存储和取出是有序的

不同步 线程不安去,运行速度快

 

泛型格式:

<数据类型>

泛型可以说使用在类、接口、方法、变量上

泛型好处

1.提供了程序的安全

2、将运行期遇到的问题转移到编译器

3、省去了类型强转的麻烦

 

转载于:https://www.cnblogs.com/jdan/p/9035696.html

你可能感兴趣的文章
ibatis学习笔记
查看>>
18-ES6(1)
查看>>
poj1611 简单并查集
查看>>
tensorflow实现迁移学习
查看>>
Ubuntu 14.04下安装CUDA8.0
查看>>
跨平台开发 -- C# 使用 C/C++ 生成的动态链接库
查看>>
关于Redis处理高并发
查看>>
C# BS消息推送 SignalR介绍(一)
查看>>
asp.net core 系列 16 Web主机 IWebHostBuilder
查看>>
WPF星空效果
查看>>
WPF Layout 系统概述——Arrange
查看>>
PIGOSS
查看>>
几款Http小服务器
查看>>
iOS 数组排序
查看>>
第三节
查看>>
PHP结合MYSQL记录结果分页呈现(比较实用)
查看>>
Mysql支持的数据类型
查看>>
openSuse beginner
查看>>
Codeforces 620E(线段树+dfs序+状态压缩)
查看>>
Windows7中双击py文件运行程序
查看>>