gpt4 book ai didi

java - Java Hash Map中可以存储50mb的字符串类型键值对数据吗

转载 作者:行者123 更新时间:2023-11-30 02:14:00 27 4
gpt4 key购买 nike

我想在 Java HashMap 中存储大约 500 万个唯一字符串。键和值将是相同的字符串。字符串最大长度为 15 个字符 (ASCII)。稍后我想查找 HashMap 中是否存在特定字符串。

我需要担心上述场景的内存大小问题吗?我猜它不需要超过 75 mb 到 150 mb 的内存。

提前致谢。

最佳答案

Key and value will be the same string.

当其键和值相同时使用Map是多余的。您应该使用Set,特别是如果您只打算使用contains

考虑到您对空间的担忧,我们假设每个 String 的长度为 15 个字符。

假设您使用的是 Java 9,Latin 1 字符仅需要一个字节,因此 500 万个唯一的 String 最多需要 75_000_000 code> 字节或 75 MB

Java 8 及更低版本使用 char[] 支持其 String,因此在这种情况下您实际上需要两倍的内存。

关于java - Java Hash Map中可以存储50mb的字符串类型键值对数据吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49198349/

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