Java中的集合类
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java中的集合类,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3620字,纯文字阅读大概需要6分钟。
内容图文
作用:操作中大量对象的临时存放问题,由于数组存在不能灵活变换存放空间大小,所有就有了集合.
注:数组和集合的区别:数组长度不可变,且存储基本数据类型,集合长度可变,只能存储对象
因为容器中数据结构不同,容器有很多种,不断的共性功能抽取,形成了集合体系.
集合框架:
Collection
├List:有序(存入的顺序和取出的顺序一致).有索引.允许重复元素
│├LinkedList 链表结构 增删快(相对于ArrayList)
│├ArrayList 数组结构 查询快(相对于LinkedList)
│└Vector
│ └Stack
└Set:,存取无序.不允许重复元素
Map
├Hashtable 哈希表.是同步的.不允许null键,null值
├HashMap 哈希表,是不同步的,允许null键,null值
└TreeMap 二叉树,不同步的.可以对键排序
-----------------------------------------------------------------------
一,Collection集合
注:哈希表在判断元素是否相同:依据hashCode方法,如果哈希重复(哈希值相同),再判断元素的equals方法,如果equals返回true,不存,返回false..
需求中也有这样的情况,元素具备的比较功能不是所需要的,也就是不想按照自然排序方式而是自定义的排序方式对元素进行排序,而且存储TreeSet中的元素万一没有比较功能-->这时可以使用第二种比较方式--让集合具备比较功能.---TreeSet构造函数有直接在创建对象时通过比较器比较的方法
技巧:JDK1.2以后出现的集合框架中的常用子类对象,存在规律---前缀名是数据结构名,后缀名是所属体系名ArrayList:数组结构,看到数组就知道查询快,看到List就可以增删改查LinkedList:链表结构,增删快. xxxFirst xxxLastHashSet:哈希表,元素必须覆盖hashCode和equals方法,查询速度快,不保证有序,看到Set就知道不可以重复LinkedHashSet:链表+哈希表,可以实现有序TreeSet:二叉树,可以排序-->两种比较方式,一种是自然排序compareable,一种是比较器,comparetor
或者:
通过map获取entrySet(存放这key和map映射关系的对象的Set集合)利用这个映射关系构造一个迭代器,再通过me.getKey(),me.getValue()分别获取键和值
注:集合框架的工具类-------------------------------------------------------------------------Collections:定义的都是操作Collection的静态方法1.对list排序sort(list)class Student implements Comparable{}public static <T extends Comparable<? super T>>void sort(List<T> list){}2.逆序reverseOrder3.max min4.二分查找5.将非同步集合转成同步集合-------------------------------------------------------------------------Arrays:用来操作数组的工具类方法,方法都是静态的
原文:http://www.cnblogs.com/fictio/p/5585609.html
内容总结
以上是互联网集市为您收集整理的Java中的集合类全部内容,希望文章能够帮你解决Java中的集合类所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。