非常简单的问题,字符串占用了多少数据(字节)?它们每个字符占用1个字节吗?
我试着搜索一下,但学校并没有说......
我想了解这一点,以减少我的网络应用中的带宽。
另外,对于任何知道的人,socket.io在使用socket.emit()
时会自动json字符串化吗?
答案 0 :(得分:1)
String是一个字符数组。因此,它现在将大约sizeof(char) * noOfCharacters
忽略String类中的其他字段。字符可以是1字节或2字节,具体取决于系统,字符的类型 - unicode等。
但是,根据您的问题,您对通过网络传输的数据更感兴趣。请注意,数据始终以字节(byte[]
)进行交换,因此字符串将首先转换为byte []表示,然后移植。
要限制带宽使用,您可以启用压缩,选择可互操作的序列化技术(protobuf,smile,fastinfoset等)