相关疑难解决方法(0)

Hashmap与阵列性能

当已知Array的索引时,使用Arrays或HashMaps是否(性能方面)更好?请记住,示例中的'objects array/map'只是一个示例,在我的实际项目中它由另一个类生成,因此我无法使用单个变量.

ArrayExample:

SomeObject[] objects = new SomeObject[2];
objects[0] = new SomeObject("Obj1");
objects[1] = new SomeObject("Obj2");

void doSomethingToObject(String Identifier){
    SomeObject object;
    if(Identifier.equals("Obj1")){
        object=objects[0];
    }else if(){
        object=objects[1];
    }
    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

HashMapExample:

HashMap objects = HashMap();
objects.put("Obj1",new SomeObject());
objects.put("Obj2",new SomeObject());

void doSomethingToObject(String Identifier){
    SomeObject object = (SomeObject) objects.get(Identifier);
    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

HashMap看起来要好得多,但我真的需要这方面的表现才能优先考虑.

编辑:井阵,那么,建议仍然欢迎

编辑:我忘了提一下,Array/HashMap的大小总是一样的(6)

编辑:似乎HashMaps更快的阵列:128毫秒哈希:103毫秒

当使用较少的周期时,HashMaps的速度甚至快了两倍

测试代码:

import java.util.HashMap;
import java.util.Random;

public class Optimizationsest {
private static Random r = new Random();

private static HashMap<String,SomeObject> hm = new …
Run Code Online (Sandbox Code Playgroud)

java arrays optimization performance hashmap

20
推荐指数
2
解决办法
5万
查看次数

标签 统计

arrays ×1

hashmap ×1

java ×1

optimization ×1

performance ×1