我正在尝试弄清楚如何从一个数组中删除前导零。该数组当前存储的最低有效位在第一个位置。
例如:如果数字是1101,则在我的数组中存储为:[1,1,0,1]。我不想翻转数组或以任何方式改变它,只需删除前导零。我已经用粗体标出需要删除的前导零。
我试图只使用数组来完成这个操作,而不进行转换。
例如:当前输出:0 1 1 0
期望输出:0 1 1
例如:如果数字是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”,就中断循环。 - CubeJockey