gpt4 book ai didi

java - 展平 Ragged LinkedHashMap

转载 作者:行者123 更新时间:2023-12-01 19:18:47 26 4
gpt4 key购买 nike

我有一个 LinkedHashMap,其中 CommonEnum 表示我想要跟踪的 byte[] 类型。

LinkedHashMap<CommonEnum, byte[]> map = new LinkedHashMap<CommonEnum, byte[]>();

Java中将其展平为连续的最有效方法是什么

字节[]

具有相同的顺序(这就是 HashMap 被链接的原因)。

最佳答案

如果您可以使用LinkedHashMap<CommonEnum, byte[]> ,它变得更容易,我不知道为什么你会使用 Byte[] ,所以我假设是这样。

我不确定最有效,但我认为这两个是:

    1. 创建一个足够大的 byte[](估计它或通过添加大小来计算)
    2. 使用System.arraycopy循环遍历这些值对于每个。
    3. 如果数组太长,请使用 Arrays.copyOf来缩短它。
    1. 创建 ByteArrayOutputStream
    2. 循环遍历值,将每个字节[]写入流。
    3. 获取数组。

顺便说一句,如果您的 CommonEnum 值始终具有相同的顺序(并且您可以使用此顺序作为枚举定义中的顺序),则可以使用 EnumMap相反。

关于java - 展平 Ragged LinkedHashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5391425/

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