Java数据和集合的对比
来源:互联网 发布:filmimpact插件 mac版 编辑:程序博客网 时间:2024/06/14 01:16
A. 数组(数组是一组数据的集合,数组中的每个元素被称为元素。在数组中可以存放任意类型的元素,但是同一个数组中存放的元素类型必须一致,数组可以分为一维数组和多维数组) a. 数组的定义 i. 动态的定义 1) 类型[]数组名=new 类型[长度]; ii. 静态初始化 1) 类型[]数组名 = new 类型[]{元素,元素,……..} 2) 类型[]数组名 = {……….} iii. 多维数组 1) Int [] [] arr=new int [3][4]; 2) Itn [] [] arr=new int[3][]; 3) Int [] [] arr={{1,2},{2,3}}; b. 特点 i. 数组的大小是固定的,一旦创建就无法扩充,集合的大小不固定 ii. 数组存放的类型只能是一种,集合存放的类型不是一种(不加泛型时候添加的类型是Object) iii. 数组是java中内置的数据类型,是线性排序的,执行效率是很快的 c. 常用方法 i. 打印数组:Arrays.toString(array); ii. 根据数组创建ArrayList:ArrayList<String>arraylist=new ArrayList<>(Arrays.asList(array)); iii. 检查数组中是否包含某个值:Arrays.asList(array).contains("a); iv. 将ArrayList转换为数组:arrayList.toArray(); v. 将数组转换为Set集合:new Hash<String>(Arrays.asList(array));B. 集合 a. Collection:单列集合类的根接口,用于储存一系列符合某种规则的元素。 i. List:元素有序,元素可重复 1) ArrayList:查找便捷,增删慢 a) 常用的方法 i) 增删改查 ii) boolean contains(Object o) iii) int indexOf(Object o) iv) boolean isEmpty() v) E remove(int index) vi) E set(int index, E element) vii) Object[] toArray() b) Iterator接口(用于迭代Collection总的元素) i) boolean hasNext() 如果仍有元素可以迭代,则返回 true。(换句话说,如果 next 返回了元素而不是抛出异常,则返回 true)。 ii) E next() 迭代的下一个元素 iii) void remove() 移除操作 2) LinkedList:增删快,查找慢 a) 常用的方法 i) 增删改查 ii) E element() 获取但是不移除第一个元素 iii) boolean offer(E e) 将指定元素添加到结尾 iv) boolean offerFirst(E e) 将指定元素添加到开始 v) E peek() 获取但是并不移除第一个元素 vi) E poll() 获取并移除第一个元素 vii) int size() viii) E set(int index, E element) ix) Object[] toArray() ii. Set:元素无序,元素不可重复 1) HashSet集合 a) 常用的方法 i) boolean add(E e) 如果不包含此元素就添加 ii) void clear() 移除set集合中的所有元素 iii) Object clone() 返回此 HashSet 实例的浅表副本:并没有复制这些元素本身 iv) boolean contains(Object o) Set集合是否包含此元素 v) boolean isEmpty() 是否为空 vi) boolean remove(Object o) 如果set集合中存在该元素就删除(删除指定元素) vii) int size() Set集合的容量 viii) Iterator<E> iterator() 返回对此 set 中元素进行迭代的迭代器。返回元素的顺序并不是特定的。 2) TreeSet集合 b. Map:一个双列集合,它的每个元素都包含一个键对象key和一个值对象value,键和值之间存在一种对应关系,成为映射。 i. HashMap:是map集合的实现类,它用于存储键值映射关系,但是必须保证不能出现重复的键。 ii. TreeMap:是map集合的实现类,用来存储Key和value的映射关系,通过二叉树的原理保证键的唯一性。
阅读全文
0 0
- Java数据和集合的对比
- java 的复制集合对比
- 集合的列举和对比
- 【集合】Java集合对比
- c#中泛型集合directory和java中map集合对比
- JAVA数据集合:Set与Get效率对比
- java集合对比汇总
- Java集合对比
- java 集合类对比
- C#和Java的对比
- kotlin 和java 的对比
- 社区 Java .net 的一个对比数据
- java 中long型数据的对比
- Java数据结构与算法之数据结构-逻辑结构-集合(六)------集合之ArrayList和LinkedList对比
- Objective-C的语法对比(和Java的对比)
- java大量数据对比
- java List Map数据对比 找出相同和不同的内容
- RxJava与面向对象Java的对比和基础数据构造
- 静态查找:顺序查找和折半查找法
- 在web端播放音频文件
- 《视觉SLAM》第三章课后习题
- OCR表格识别获得青睐 前景大好!
- OpenGL着色器与Phong光照明模型
- Java数据和集合的对比
- 23、24、25
- (VS2010)MFC常用语句
- logback 启动警告提醒,日志不起作用
- Linux线程死锁
- 并行计算与分布式处理的区别
- JavaWeb之El表达式
- WebView Jsoup的使用封装
- 【Maven学习(七)】----基于Mybatis-Generator自动生成Dao、Model、Mapping文件