【发布时间】:2025-12-03 02:20:05
【问题描述】:
我想弄清楚如何从数组中删除前导零。该数组当前存储在第一个位置的最低有效位。
示例:如果数字是 1101,它在我的数组中存储为:[1,1,0,1]。除了删除前导零外,我不想翻转数组或以任何方式更改它。我将需要删除的前导零加粗。
我试图只使用数组而不是转换它来做到这一点
例如:当前输出:0 1 1 0
预期输出:0 1 1
public static byte[] normal(byte[] arr)
{
//check if all the numbers are 0 and last is 1
byte [] output = new byte[copy.length];
for(int i = arr.length;i<=0;i--)
{
if(arr[i]==1){
output[i]=copy[i];
}
}
return output;
}
【问题讨论】:
-
将
byte[]转换为ArrayList并向后迭代,从最后一个元素开始,删除所有零。一旦找到“1”就打破循环 -
我正在尝试只使用数组而不是转换它来做到这一点