所以我为自己的网络游戏制作了自己的网络协议,为了节省空间,每个消息(通过TCP发送)都被赋予一个短的2字节的ID,所有发送的消息从服务器到客户端,反之亦然是字符串,我怎么能在短短的2字节(字符)在Java中转换为一个字符串?对字符串的2个字节进行简短处理
更新:我可能没有说清楚是什么,我想......我 希望能够short int类型的转换为2个字符,这样我就可以发送短了在网络字符串格式,只需2个字节,并在另一端(在动作脚本3中)解码为短路。
一个角色可以保存256个可能的值吗?所以256 * 256 = 65,536这是一个无符号短整型的大小!
这里是我到目前为止有:
public static String toCode(int c){
if(c <= 255){
return Character.toString((char)c);
}else{
return null;
}
}
public static int fromCode(String c){
return ((int)c.charAt(0));//Return the character code of the send string, 1 char only
}
这可以把INT转换成可在网络上发送的单个字符,现在我只是需要把它使用2个字符,它可以做一个简短的。
你不能 - 这就是为什么有'short'在第一个地方... – Yahia
如果你想节省空间,我不认为你应该使用字符串:) – user697111
一个Java'char'是16位,而不是8 ... –