ArrayList取值和HashMapget取值谁速度更快
笔者有一次去做金融软件方面的公司去面试.被问到了这个问题。当时答对了,后来回来又专门写个demo对比了下。
HashMap:由键值对存储,取值 map.get(key),当程序运行到此时会直接get(key)没有就返回null(当然HashMap是允许存储空值空key的但空key只能存储一个(所以当hashmap集合的值需要去做比对时不能使用equals))。ArrayList 底层由数组实现 list.get(index).当arraylist去按索引查找时。会先去数组里比对索引是否越界。然后再去找。耗时要比HashMap慢一点.
以下是我写的demo做的时间比对,存储值得东西都一样多.(当然Hashmap是在没有哈希冲突的情况下,如果有冲突就不一定谁快了)
arraylist get值的时候会先调用rangeCheck方法对索引进行判断.
arraylist耗时输出
hashmap耗时输出
ArrayList取值和HashMapget取值谁速度更快相关推荐
- Android spinner取Value和Text的值
先声明一个对象,并重写对象的toString() View Code public class SpinnerItem {private String ID = "";privat ...
- Python 字典创建、更新、按键值排序、取最大键值对等操作
1. 字典创建 In [1]: d = {}In [2]: d Out[2]: {}In [3]: d = dict()In [4]: d Out[4]: {}In [5]: dict(a=1,b=2 ...
- sql-case when 条件1 then 取值1 when 条件2 then 取值2 else 取值3 end
遇到 XXX情况 就 XXX 遇不到就 XXX 结束 case when -- then -- else -- end 例如一个3条件取值的字段: case when 条件1 then 取值1 whe ...
- @PropertySource读取外部配置文件中的k-v保存到运行的环境变量中,加载完微博的配置文件以后使用${}取配置文件中的键值
@PropertySource读取外部配置文件中的k-v保存到运行的环境变量中,加载完微博的配置文件以后使用${}取配置文件中的键值 该注解value={},可以使用String数组形式,读取多个配置 ...
- zabbix web前端取值同后端取值不一致
目前部署了zabbix3.0作为生产的监控系统,最近发现一个有趣的问题,就是套用percona公司的percona moinitor plugins中MySQL的监控模板的时候,有些agent的机器在 ...
- jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中
例:将多个选中的checkbox的值组装成一个字符串 <script type=text/javascript> function addMem(){ //var followers = ...
- Thymeleaf读取model里面的对象||Thymeleaf读取model里面的集合||Themeleaf在js中取值||访问带参数的消息||ThymeleafObjects的使用[取三大作域的值
Thymeleaf读取model里面的对象 Student.java package com.sxt.domain;import lombok.AllArgsConstructor; import l ...
- java如何获得键值_如何在java中取map中的键值 的两种方法
第一种方法根据键值的名字取值 import java.util.HashMap; import java.util.Map; public class Test { /** * @param args ...
- php从session取数据乱码,如何解决php取不到session的值的问题
如何解决php取不到session的值的问题 发布时间:2020-08-10 10:35:22 来源:亿速云 阅读:80 作者:Leah 今天就跟大家聊聊有关如何解决php取不到session的值的问 ...
最新文章
- 苹果支付和ios安全 - 你需要知道的
- 比特币周一盘中数秒内闪跌 80%
- Linux opencv安装与编译
- mysql+多列外键_MySQL中的多列外键?
- Python知道cos值求角度_Python——画一棵漂亮的樱花树
- tracepro杂散光分析例子_2020临中高考咨询群咨询成效问卷结果分析
- 喜大普奔,微软Microsoft JDBC Driver For SQL Server已发布到maven中央仓库
- 485. 最大连续1的个数
- rsync linux 教程,rsync 用法教程
- 安装教程之maven下载及安装
- web前端设计与开发,css段落首行缩进2字符怎么设置
- inprivate浏览是什么意思_inprivate浏览是什么意思,怎样关闭inprivate浏览器
- 基于matlab的调用电脑摄像头,截取视频图像识别颜色
- 不吹不黑,三年赶超阿里云,华为这次是认真的!
- iOS-Runtime
- 【GitHubShare】让你的电脑上全是喵喵,谁又能拒绝可爱呢?
- 电子科大信软互+班 程算I 2021机考真题
- 设计模式(三)--工厂模式
- 第三章顺序结构,输入正方形的边长,输出其周长和面积
- MT4 Manager java二次开发(二)
热门文章
- 【技术实战】华为手机学生模式下的微信数据提取
- 微信小程序POST请求400错误
- php环境搭建(正确配置nginx和php)
- 扭曲文字动态效果怎么制作?教程来了
- 2021款联想拯救者r9000p和r9000k有什么区别 哪个好详细性能配置对比
- javaweb第九天 JDBC
- yolo系列网络算法的演变过程
- 关闭服务器系统关机事件,让Win10关机时显示“关闭事件跟踪程序”(选择关机原因)...
- excel多列多行堆叠成多列一行_「Excel技巧」Excel快速实现将一行转为多行多列的四种方法...
- 公众号现金红包接口开发