gpt4 book ai didi

java - 如何创建固定长度数组值的 Java Map?

转载 作者:搜寻专家 更新时间:2023-11-01 02:15:17 25 4
gpt4 key购买 nike

我有一个程序需要存储几个简单的 int 值并将每个值与一个 String 键相关联。目前我像这样初始化这个成员:

private Map<String, int[]> imageSizes = new HashMap<String, int[]>();

然后用 imageSizes.put("some key", new int[]{100, 200});

这样的东西附加到它

我的问题是 - 有没有办法给这些值一个固定的长度?我将只需要每个元素中的 2 个元素。如果我尝试在成员定义中为数组指定长度,Java 不喜欢这种语法。

此外,在这种情况下限制数组长度是否有任何好处,还是我只是过度热衷于优化?

最佳答案

new int[] 只有在数组元素跟在大括号中且编译器可以计算数量的结构中才合法。在 Map 中,用于值的内存量只是引用的大小(32 或 64 位),无论数组本身有多大。因此,固定数组的大小不会改变 map 使用的内存量。在 C 中,您可以声明一个指针,然后为其分配更多或更少的内存(或者忘记分配任何内存并崩溃); Java 为您管理内存。

关于java - 如何创建固定长度数组值的 Java Map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7524499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com