public class RemoveTrailingNullsFromArray {
public static byte[] removeTrailingNulls(byte[] byteArray) {
int lastIndex = byteArray.length - 1;
while (lastIndex >= 0 && byteArray[lastIndex] == 0) {
lastIndex--;
}
byte[] trimmedArray = new byte[lastIndex + 1];
System.arraycopy(byteArray, 0, trimmedArray, 0, lastIndex + 1);
return trimmedArray;
}
public static void main(String[] args) {
byte[] byteArray = {1, 2, 3, 0, 0, 0, 0};
byte[] trimmedArray = removeTrailingNulls(byteArray);
for (byte b : trimmedArray) {
System.out.print(b + " ");
}
}
}
/*
run:
1 2 3
*/