gpt4 book ai didi

Java - 在值的第一个实例处拆分数组

转载 作者:行者123 更新时间:2023-11-29 05:46:28 25 4
gpt4 key购买 nike

下面的方法接收不确定长度的byte[] b。它包含要打印到控制台样式窗口的一串字符。我想在第一个换行符处拆分 b ,以便该字符包含在第一个数组中。但是,目前这会引发 ArrayOutOfBoundsError,因为 stringBytesextraBytes 声明的大小为零。我怎样才能解决这个问题?

byte[] stringBytes = {};
byte[] extraBytes = {};
int i = 0;

while(i < b.length) {
stringBytes[i] = b[i];
if(b[i] == '\n' && i + 1 != b.length) {
while(i < b.length) {
extraBytes[i - stringBytes.length] = b[i++];
}

break;
}

i++;
}

最佳答案

试试这个:

byte[] stringBytes;
byte[] extraBytes;
int i = 0;

while(i < b.length) {
if(b[i] == '\n' && i + 1 != b.length) {
break;
}

i++;
}
stringBytes = java.util.Arrays.copyOf(b, i+1);
extraBytes = java.util.Arrays.copyOfRange(b, i+1, b.length - 1);

关于Java - 在值的第一个实例处拆分数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15707365/

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