Java十大简单性能优化(18)
privatetransientObject[
vals;
publicV put(K key V value) {
// ...
intindex = key.ordinal();
vals[index
= maskNull(value);
// ...
此实现的本质是这样一个事实 , 即我们拥有一个索引值数组 , 而不是哈希表 。 插入新值时 , 我们要做的就是查找映射项 , 只是要求枚举的常量序号 , 该序数由Java编译器在每种枚举类型上生成 。 如果这是一个全局配置图(即只有一个实例) , 增加的访问速度将帮助EnumMap大量强于大盘HashMap , 可少用一些堆内存 , 而这将有运行hashCode() , 并equals()在每个键 。
带走
Enum并且EnumMap是非常亲密的朋友 。 每当您将类似枚举的结构用作键时 , 请考虑实际上使这些结构成为枚举并将其用作in中的键EnumMap 。
推荐阅读
- 三国杀|三国杀:谁是技能最简单的武将,返璞归真,这就是武将基本元素!
- ag战队|关键的卡位赛,AG超玩会却上了猫神,原因很简单,但是却很心酸
- ps3|魔兽怀旧服:专业打“补丁”的装备,虽然获取简单,但能弥补短处
- 地下城堡|LOL手游上分总结,中单最简单上单没人帮,快手投大钱招新主播
- |《英雄联盟手游》当前版本最强上分英雄公布,阿克尚最强团战“利器”,上分很简单
- 黄忠|五个能秒坦克的射手,香香仅排第五,榜首瞬秒脆皮太简单
- 显卡|游戏盘点:十大最费显卡的PC单机大作,需要配置过硬的电脑才能玩
- 炸弹人|英雄联盟手游:炸弹人+石头人走下,简单又强力啊
- 貂蝉|高难度英雄等于高操作英雄?非也,有些英雄简单,但你却玩不好
- 原神|原神:新深渊出炉后,钟离最终还是倒了?削弱一个角色太简单了