LinkedList,ArrayList,HashMap,TreeMap
hashMap是无序的,TreeMap是有序的(hashmap是一个链表,而treemap实现了sortedmap()接口所以有序,其实现同时实现比较器)
hashSet的底层是根据HashMap来存储的 ,TreeSet的底层是根据TreeMap存储的。(其元素是通过key值存储的)
一般选用hashMap,因为hashMap是无序的查找快,treeMap是有序的查找慢
linkedHashMap是hashmap的子类,他可以保证输出可以和输入一样
vector、arraylist、linkedlist
vector与ArrayList是以数组形式存储的,但是vector线程安全,并且在数据量很大的时候速度比ArrayList块
ArrayList是非线程安全的,一般不考虑线程安全问题时使用ArrayList
arraylist比linkedlist的查询速度快,linkedlist是以双向链表的形式存储的,所以插入和删除的时候比ArrayList快
LinkedList,ArrayList,HashMap,TreeMap的更多相关文章
- Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法
Java中List,ArrayList.Vector,map,HashTable,HashMap区别用法 标签: vectorhashmaplistjavaiteratorinteger ArrayL ...
- JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用
JAVA之旅(十八)--基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用 JAVA把完事万物都定义为对象,而我们想使用数据 ...
- Qunar机票技术部就有一个全年很关键的一个指标:搜索缓存命中率,当时已经做到了>99.7%。再往后,每提高0.1%,优化难度成指数级增长了。哪怕是千分之一,也直接影响用户体验,影响每天上万张机票的销售额。 在高并发场景下,提供了保证线程安全的对象、方法。比如经典的ConcurrentHashMap,它比起HashMap,有更小粒度的锁,并发读写性能更好。线程安全的StringBuilder取代S
Qunar机票技术部就有一个全年很关键的一个指标:搜索缓存命中率,当时已经做到了>99.7%.再往后,每提高0.1%,优化难度成指数级增长了.哪怕是千分之一,也直接影响用户体验,影响每天上万张机 ...
- Arraylist 和 linkedlist || hashset 和treeset. || hashMap 和 TreeMap
参考:http://liuyuan418921673.iteye.com/blog/2256120 1. ArrayList和LinkedList的区别和使用场景 ArryList 与linked ...
- == 和 equals,equals 与 hashcode,HashSet 和 HashMap,HashMap 和 Hashtable
一:== 和 equals == 比较引用的地址equals 比较引用的内容 (Object 类本身除外) String obj1 = new String("xyz"); Str ...
- Set集合[HashSet,TreeSet,LinkedHashSet],Map集合[HashMap,HashTable,TreeMap]
------------ Set ------------------- 有序: 根据添加元素顺序判定, 如果输出的结果和添加元素顺序是一样 无序: 根据添加元素顺序判定,如果输出的结果和添加元素的顺 ...
- Java学习之模拟纸牌游戏,List的ArrayList,Map的HashMap,重写Collections类的sort方法对指定类进行通过特定属性排序,输入异常处理等的学习
首先放上测试效果图 设计框架 具体的代码实现 创建玩家类 public class Player implements Comparable<Player>{ int id; String ...
- 【转】HashMap,ArrayMap,SparseArray源码分析及性能对比
HashMap,ArrayMap,SparseArray源码分析及性能对比 jjlanbupt 关注 2016.06.03 20:19* 字数 2165 阅读 7967评论 13喜欢 43 Array ...
- 2,ArrayList
一,ArrayList简介 1,ArrayList 是一个数组队列,相当于动态数组.与Java中的数组相比,它的容量能动态增长. 2,ArrayList 继承了AbstractList,实现了List ...
- Java日常总结之LinkedList、ArrayList的效率分析
前言: 在我们平常开发中难免会用到List集合来存储数据,一般都会选择ArrayList和LinkedList,以前只是大致知道ArrayList查询效率高LinkedList插入删除效率高,今天来实 ...
随机推荐
- Spark SQL dropDuplicates
spark sql 数据去重 在对spark sql 中的dataframe数据表去除重复数据的时候可以使用dropDuplicates()方法 dropDuplicates()有4个重载方法 第一个 ...
- C++ strcmp与strncmp的比较
C++ strcmp与strncmp的比较(转载) 原文链接:https://www.cnblogs.com/ybqjymy/p/12565444.html strcmp与strncmp都是用来比较 ...
- Kafka与RabbitMQ区别
RabbitMQ 和 Kafka 的显著差异 RabbitMQ 是一个消息代理,但是 Apache Kafka 是一个分布式流式系统.好像从语义上就可以看出差异,但是它们内部的一些特性会影响到我们是否 ...
- Number(),parseInt()和parseFloat
一.Number() 1.如果是传进去数字值,只进行传入和传出,前置为 0x 的数字 和 前置 为0且不包含数字8,9的数字 ,会被转为十进制,对于其他的数字来说通常没有变化. 2.如果传进去 ...
- 修改linux操作系统的时间可以使用date指令 运维系统工程师必会技术
修改linux的时间可以使用date指令 修改日期: 时间设定成2009年5月10日的命令如下: date -s 05/10/2009 修改时间: 将系统时间设定成上午10点18分0秒的命令如下. d ...
- Java反射(一)
什么是反射? 在程序的运行过程中,可以动态的创建对象. 反射的基石是什么? 字节码对象是反射的基石.字节码对象:Java类文件通过javac进行编译后生成的xxx.class文件,此文件由jvm加载至 ...
- Mybatis联合查询(一)
Mybatis的简单联合查询操作: 实体类: Employee: package com.test.mybatis; public class Employee { private Integer i ...
- 5 art-template
npm 在终端命令下执行装包,就会在该目录下产生一个node_modules包 art-template地址:https://aui.github.io/art-template/zh-cn/docs ...
- PHP复杂变量
eval($str="${${phpinfo()}}";) → 可以执行phpinfo() ${phpinfo()} = {${phpindo()}} PHP复杂变量 ...
- Typora第一次使用
一级标题 二级标题 三级标题 三个# + 空格 分割线 三个- 三个* 粗体 ctrl + B 斜体 ctrl + I 删除线 引用 一个大于号就可以了 图片: ! + [] + (图片路径) 超链接 ...