`

java常用集合总结

    博客分类:
  • java
 
阅读更多
java常用集合总结

1、线程安全
线程安全就是说多线程访问同一代码,不会产生不确定的结果。

2、List类和Set类
List类和Set类是Collection集合接口的子接口。
Set子接口:无序,不允许重复。
List子接口:有序,可以有重复元素。

Set和List对比:
Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。
List:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变。

Set和List具体子类:
Set
|————HashSet:以哈希表的形式存放元素,插入删除速度很快。

List
|————ArrayList:动态数组
|————LinkedList:链表、队列、堆栈。

Array和java.util.Vector
Vector是一种老的动态数组,是线程同步的,效率很低,一般不赞成使用。

3、HashMap和HashTable
a.HashMap去掉了HashTable的contains方法,但是加上了containsValue()和containsKey()方法。
b.HashTable同步的,而HashMap是非同步的,效率上比HashTable要高。
c.HashMap允许空键值,而HashTable不允许。

4、线程安全集合类与非线程安全集合类
LinkedList、ArrayList、HashSet是非线程安全的,Vector是线程安全的;
HashMap是非线程安全的,HashTable是线程安全的;
StringBuilder是非线程安全的,StringBuffer是线程安全的。

5、集合适用场景
对于查找和删除较为频繁,且元素数量较多的应用,Set或Map是更好的选择;
ArrayList适用于通过为位置来读取元素的场景;
LinkedList 适用于要头尾操作或插入指定位置的场景;
Vector 适用于要线程安全的ArrayList的场景;
Stack 适用于线程安全的LIFO场景;
HashSet 适用于对排序没有要求的非重复元素的存放;
TreeSet 适用于要排序的非重复元素的存放;
HashMap 适用于大部分key-value的存取场景;
TreeMap 适用于需排序存放的key-value场景。
分享到:
评论

相关推荐

    java常用集合类总结

    对java集合类的总结。 包括性能,类图。

    JAVA中集合类一些常用类的总结

    JAVA中集合类一些常用类的总结

    java集合类知识总结--思维导图文件xmind

    java集合类知识总结--思维导图文件xmind xmind文件类型 总结了java常用集合相关问题 包括map、set、list、数组等

    java集合思维导图

    java集合 java集合思维导图 java集合总结

    java常用方法集合

    JAVA常用方法的总结整理

    Java集合框架使用总结

    Java集合框架使用总结 前言: 本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档。 一、概述 数据结构对程序设计...

    java基础之集合总结

    此文档属于本人当初学习java基础之集合,所整理的文档。里面整理了单列集合Collection与双列集合Map的子类及常用方法。希望对你的学习有帮助,谢谢!

    java常用API总结

    Java 常用API的运用,效率及技巧 1. Java面向对象基本概念 2. System 3. String, StringBuffer 4. 数值,字符,布尔对象...7. Java集合类 8. ResourceBundle, Properties 9. Exceptions 10. JDBC类库 11. 常用设计模式

    常用java date方法集合

    常用java date方法集合,对DATE类型操作的总结

    java资料集合 js css log2j 报表 java常用类 GUI项目

    java资料集合 js css log2j 报表 java常用类 GUI项目java资料集合 js css log2j 报表 java常用类 GUI项目java资料集合 js css log2j 报表 java常用类 GUI项目 终于等到网速好了 学了java这段时间还没来得及总结 今天...

    Java中所有集合特点和扩容对比总结

    Java中所有集合特点和扩容对比总结,把常用的都概括进来了

    Java集合类总结

    Java集合类包下的多个集合类是我们项目开发中常用的类,由于存在大量的方法,若没有一个清晰的总结框图,很难灵活使用,通过该总结,你会发再其实该包下的接口并非我们想象的那么复杂...

    Java基础知识点总结.docx

    无论是工作学习,不断的总结是必不可少的。只有不断的总结,发现问题,弥补不足,才能长久的...java.util.concurrent.locks包下常用的类 326 NIO(New IO) 327 volatile详解 337 Java 8新特性 347 Java 性能优化 362

    Java集合总结【面试题+脑图】,将知识点一网打尽!

    3. Java中的集合框架有哪些?它们之间有什么区别? 4. 什么是Java中的线程?如何创建线程?如何实现线程同步? 5. Java中的IO流有哪些?它们之间有什么区别? 6. Java中的网络编程有哪些类和接口?如何实现客户端...

    java基础学习总结笔记

    知识主要包括:Java基础常识、如何安装Java工具、Java语言的基础组成、Java面向对象、Java多线程、Java常用类、集合(重点)、IO流、GUI图形界面、网络编程、正则表达式、反射、注解、类加载器、动态代理等等,另外...

    java集合(自学整理)

    自己学习总结的java常用集合知识

    Java集合类知识点总结

    本文把Java集合类的相关知识点做了总结,并把Java常用集合类之间的区别做了分析,一起参考学习下。

    java常用类集

    java常用集合操作 个人经验总结 把代码写成了文档 便于复习与查找

    javaAPI学习总结

    java 基础学习,以及相关集合类的说明以及比较

Global site tag (gtag.js) - Google Analytics