0

我正在尝试创建一个地图,其中数据将是静态的,并且在程序启动后不会更改(实际上是从服务器加载的)

有两个数组是否更好,例如在 Java 中:

String keys[] = new String[10];
String values[] = new String[10];

其中键[i] 对应于值[i]?

或将它们保存在单个数组中,例如

String[][] map[] = new String[10][2];
where map[i][0] is the key and map[i][1] is the value?

就个人而言,第一个对我来说更有意义,但第二个对我的伴侣更有意义。在性能方面是否更好?更容易理解?

更新:我希望在不存在 Map 和 KeyValuePairs 的 JavaScript 中执行此操作

4

3 回答 3

4

使用Map实现(在 Java 中)会使这更容易理解,因为关联更清晰:

static final Map<String, String> my_map;
static
{
    my_map = new HashMap<String, String>();
    // Populate.
}
于 2012-09-27T13:00:41.007 回答
2

AHashtable看起来像你需要的。它以这样一种方式散列键,使得查找可以在 O(1) 中发生。

于 2012-09-27T13:00:20.430 回答
0

因此,您希望在 javascript 中执行此操作。地图中js中的任何数组或对象,所以你可以这样做

var mymap = {'key1':'value1','key2':'value2'};
于 2012-09-27T15:15:52.803 回答