Задание: переместить нулевые ячейки в массиве строк в конец, а заполненные - в начало. Использовать только один цикл for и while

152
25 июля 2021, 23:00
public class Movement {
public static String[] compress(String[] array) {
for (int index = 0; index < array.length; index++) {
String cell = array[index];
if (cell == null) {
// переместить cell
// Здесь нужен цикл while
}
System.out.print(array[index] + " ");
}
return array;
}
Answer 1
public static String[] compress(String[] array) {
    for (int i = 0; i < array.length; i++) {
        String cell = array[i];
        if (cell == null) {
            int j = i + 1;
            while(j < array.length && array[j] == null)
                j++;
            if(j < array.length){
                array[i] = array[j];
                array[j] = null;
            }
        }
    }
    return array;
}
READ ALSO
Как из команды файла ***.form перевести в код java

Как из команды файла ***.form перевести в код java

Возник вопрос, можно ли перевести то описание элементов, кнопок разделителей и тд

197
Получение атрибута XPath и его сравнение

Получение атрибута XPath и его сравнение

Мне нужно получить те объекты, атрибуты которых равны "q" и вывести все названия тайтлов, у которых этот атрибут таков

189
Организация архитектуры программы

Организация архитектуры программы

У меня есть абстрактный класс

245
Socket pc and Android

Socket pc and Android

Вообщем на компьютере запускается серверК нему должен подключатся клиент с телефона через socket

586