Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在特定区域用混合类型填充字节数组_Java_Arrays_Types_Byte_Mixed - Fatal编程技术网

Java 在特定区域用混合类型填充字节数组

Java 在特定区域用混合类型填充字节数组,java,arrays,types,byte,mixed,Java,Arrays,Types,Byte,Mixed,我想用以下结构填充一个字节数组。 [字符][数字]@@[字符串] 所以这个字符需要1个字节。对于两位数的数字,数字需要2个字节。然后是两个@和一个字符串 我的问题是,第二个信息,即数字,不是一位数就是两位数。 我创建了一个大小如下的字节数组:message.getBytes().length+5 我想要的是,我可以用信息填充这个数组,并且知道消息总是从5位开始 我是这样开始的: byteArray[0] = 'm'; byteArray[1] = number; byteArray[2] = n

我想用以下结构填充一个字节数组。 [字符][数字]@@[字符串]

所以这个字符需要1个字节。对于两位数的数字,数字需要2个字节。然后是两个@和一个字符串

我的问题是,第二个信息,即数字,不是一位数就是两位数。 我创建了一个大小如下的字节数组:
message.getBytes().length+5

我想要的是,我可以用信息填充这个数组,并且知道消息总是从5位开始

我是这样开始的:

byteArray[0] = 'm';
byteArray[1] = number;
byteArray[2] = number;
//here comes the problem. How should I check whenever its 1 or 2 digit integer and how do I save it?

整数应该总是需要2个字节才能保存,这样我才知道真正的消息从哪里开始。

一个字符在Java中是两个字节。你从来没有告诉我们你是如何获得用户输入的,另外,当用户输入错误时,你希望发生什么?你想要字符串输出还是字节数组?这完全不是一回事;在第一种情况下,您需要的是
char[]
,而不是
byte[]
。这样做的目的是什么?为什么要使用字节数组?我不确定使用字节数组是否是最好的方法,但我还不能确定。