java – 使用hashmap索引对象列表是一种好习惯吗?

我需要通过属性查找对象.

一种选择是迭代对象数组并检查属性匹配的每个对象.

一个选项是将对象放在散列映射中,并将属性作为键.然后可以通过属性简单地检索对象.

尽管您复制了属性数据,但第二种选择是否是良好的做法?

注意:假定该属性是唯一的

解决方法

是!根据您提供的内容,使用Map通常总是更好.在Map中找到一个值(其中键具有良好的散列函数)是O(1).在数组或列表中查找元素是O(n).

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...