1. 集合
  单线程 并发
Lists
  • ArrayList——基于泛型数组
  • LinkedList——不推荐使用
  • Vector——已废弃(deprecated)
  • CopyOnWriteArrayList——几乎不更新,常用来遍历
Queues / deques
  • ArrayDeque——基于泛型数组
  • Stack——已废弃(deprecated)
  • PriorityQueue——读取操作的内容已排序
  • ArrayBlockingQueue——带边界的阻塞式队列
  • ConcurrentLinkedDeque / ConcurrentLinkedQueue——无边界的链表队列(CAS)
  • DelayQueue——元素带有延迟的队列
  • LinkedBlockingDeque / LinkedBlockingQueue——链表队列(带锁),可设定是否带边界
  • LinkedTransferQueue——可将元素`transfer`进行w/o存储
  • PriorityBlockingQueue——并发PriorityQueue
  • SynchronousQueue——使用Queue接口进行Exchanger
Maps
  • HashMap——通用Map
  • EnumMap——键使用enum
  • Hashtable——已废弃(deprecated)
  • IdentityHashMap——键使用==进行比较
  • LinkedHashMap——保持插入顺序
  • TreeMap——键已排序
  • WeakHashMap——适用于缓存(cache)
  • ConcurrentHashMap——通用并发Map
  • ConcurrentSkipListMap——已排序的并发Map
Sets
    • HashSet——通用set
    • EnumSet——enum Set
    • BitSet——比特或密集的整数Set
    • LinkedHashSet——保持插入顺序
    • TreeSet——排序Set
  • ConcurrentSkipListSet——排序并发Set
  • CopyOnWriteArraySet——几乎不更新,通常只做遍历

原文链接: java-performance 翻译: ImportNew.com赖 信涛

  单线程 并发
Lists
  • ArrayList——基于泛型数组
  • LinkedList——不推荐使用
  • Vector——已废弃(deprecated)
  • CopyOnWriteArrayList——几乎不更新,常用来遍历
Queues / deques
  • ArrayDeque——基于泛型数组
  • Stack——已废弃(deprecated)
  • PriorityQueue——读取操作的内容已排序
  • ArrayBlockingQueue——带边界的阻塞式队列
  • ConcurrentLinkedDeque / ConcurrentLinkedQueue——无边界的链表队列(CAS)
  • DelayQueue——元素带有延迟的队列
  • LinkedBlockingDeque / LinkedBlockingQueue——链表队列(带锁),可设定是否带边界
  • LinkedTransferQueue——可将元素`transfer`进行w/o存储
  • PriorityBlockingQueue——并发PriorityQueue
  • SynchronousQueue——使用Queue接口进行Exchanger
Maps
  • HashMap——通用Map
  • EnumMap——键使用enum
  • Hashtable——已废弃(deprecated)
  • IdentityHashMap——键使用==进行比较
  • LinkedHashMap——保持插入顺序
  • TreeMap——键已排序
  • WeakHashMap——适用于缓存(cache)
  • ConcurrentHashMap——通用并发Map
  • ConcurrentSkipListMap——已排序的并发Map
Sets
    • HashSet——通用set
    • EnumSet——enum Set
    • BitSet——比特或密集的整数Set
    • LinkedHashSet——保持插入顺序
    • TreeSet——排序Set
  • ConcurrentSkipListSet——排序并发Set
  • CopyOnWriteArraySet——几乎不更新,通常只做遍历

【java】基础语法的更多相关文章

  1. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  2. Java基础语法(下篇)

     Java基础语法(下篇) 内容概要:        (1)函数的定义        (2)函数的特点        (3)函数的应用        (4)函数的重载               ...

  3. Java基础语法(上篇)

                     Java基础语法(上篇) 知识概要: (1)关键字的表示与规范       (2)标示符              (3)注释                (4 ...

  4. java——基础语法

    java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...

  5. java基础语法(二)--单列模式

    java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...

  6. java基础语法(一)

    java基础语法(一) 1.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成 对象(Object).对象又叫做实例(Instance). 2.类由两大部分构成:属性 ...

  7. Java基础语法入门01

    Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...

  8. Java匹马行天下之JavaSE核心技术——Java基础语法

    Java基础语法 一.   认识Java 1. Java 简介 java 是一种高级的面向对象的程序设计语言,使用Java语言编写的程序时跨平台的.从pc到手机,都有Java开发的程序和游戏,Java ...

  9. JAVA基础语法——标识符、修饰符、关键字(个人整理总结)

    JAVA基础语法——标识符.修饰符.关键字 一 . 标识符 1.1    什么是标识符 就是程序员在定义java程序时,自定义的一些名字,例如helloworld 程序里关键字class 后跟的Dem ...

  10. JavaSE入门学习7:Java基础语法之语句(下)

    继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...

随机推荐

  1. 479 Largest Palindrome Product 最大回文数乘积

    你需要找到由两个 n 位数的乘积组成的最大回文数.由于结果会很大,你只需返回最大回文数 mod 1337得到的结果.示例:输入: 2输出: 987解释: 99 x 91 = 9009, 9009 % ...

  2. CentOS 7.2安装pip

    CentOS 7.2默认安装的python版本为python2.7.5,我的系统里面默认是没有安装pip 的,搜了下网上各路大侠的解决办法,如下: 使用yum安装python-pip,但是报错,说没有 ...

  3. props.children 和容器类组件

    有一类组件,充当了容器的作用,它定义了一种外层结构形式,然后你可以往里面塞任意的内容.这种结构在实际当中非常常见,例如这种带卡片组件: 组件本身是一个不带任何内容的方形的容器,我可以在用这个组件的时候 ...

  4. repeater使用

    Repeater: HeaderTemplate - 在加载开始执行一遍 ItemTemplate - 有多少条数据,执行多少遍 FooterTemplate - 在加载最后执行一遍 Alternat ...

  5. 【学习笔记】一:JavaScript简介

    1.JavaScript简史 1)JavaScript最初的功能只是用来在客户端做简单的输入验证器,减少客户端与服务器端的数据交互(毕竟那个年代网速有限). 2)JavaScript的飞速发展及Net ...

  6. Backbone.js之Todo源码浅析

    相信每个接触了解过backbone的人都知道todo,网上的关于它的分析教程也都分析乱了.但是,知识只有自己学习领悟才是自己的,话不多说,正文开始. 在分析todo的源码之前,首先我们要知道todo具 ...

  7. Android自定义zxing扫描界面的实现

    首先,我们需要导入zxing的jar文件,其次复制所需要的资源文件以及放入自己需要添加的资源文件,复制出源码的必要相关类文件.对布局文件进行一定的修改,再修改CaptureActivity与Viewf ...

  8. 解决Ueditor在bootstarp 模态框中全屏问题

    基本的一些配置就不说了.先说一下要注意的问题:首先是zIndex的设置.记住最好都显示设置模态框和ueditor的zIndex.理清他们的层叠关系. 特别是用到ueditor里面的图片上传功能的更要设 ...

  9. 更新github上的代码

    昨晚熬夜写完了"git上传本地项目代码到github"的任务,早上来公司先把早上的工作完成后,抽点时间继续来继续更新文章 更新github上的代码 一.克隆代码 1.把大神的代码c ...

  10. 求N个数的最大公约数

    使用 “辗转相除法” 计算2个数的最大公因数: int GCD_2(int nNum1, int nNum2) { if (nNum1 > nNum2) { nNum1 = nNum1 ^ nN ...