存储二进制代码的字符串数组的内存大小

时间:2012-04-04 11:06:19

标签: java string binary

我想在String []数组中存储二进制代码列表,例如在以下示例中...

String[] str={"10001", "100101","101010101"};

存储阵列需要多少内存?

2 个答案:

答案 0 :(得分:6)

您会发现here以下结果:

  

最小字符串内存使用量(字节)= 8 *(int)((((无字符)* 2)+ 45)/ 8)

答案 1 :(得分:0)

如果您想更有效地存储这些数据,最好将其存储在数值数组中,例如int[]。通过使用String[]数组,每个字符使用至少2个字节的内存(例如,1010将使用至少8个字节的内存),而将值存储在int[]数组中允许您存储更大的二进制数而不增加额外的字节。

对于简单的比较,单个int是4个字节。如果将int的二进制值存储为String,它将使用64个字节(因为4个字节中有32位,每个“位”存储为2个字节的unicode字符)长度)。