У меня есть массив:
[0, 5, 6, 0, 0, 2, 5]
Я хотел бы удалить из него все нули, чтобы это возвращалось (сохраняя тот же порядок):
[5, 6, 2, 5]
Есть ли более простой способ удалить все нули, чем следующие?
int[] array = {0, 5, 6, 0, 0, 2, 5};
int len = 0;
for (int i=0; i<array.length; i++){
if (array[i] != 0)
len++;
}
int [] newArray = new int[len];
for (int i=0, j=0; i<array.length; i++){
if (array[i] != 0) {
newArray[j] = array[i];
j++;
}
}
Мне не удалось найти какой-либо метод в классе Arrays, и поиски Google/SO не дали мне никаких хороших ответов.