Лекция

Открыта
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Дефрагментация памяти
Дефрагментация памяти
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Расставь правильно этажи
Расставь правильно этажи
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Купи 10 батонов
Купи 10 батонов
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Ежик и яблоко
Ежик и яблоко

Лучший способ усвоить теорию — разобраться с ней на практике. Если эта тема показалась тебе сложной, советуем порешать дополнительные задания, которые помогут заполнить пробелы. Ну а если нескольких обязательных для решения задач тебе достаточно — смело переходи к следующим лекциям.

11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Прогноз погоды
Прогноз погоды
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Создание материков
Создание материков
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Геттер и сеттер в деле
Геттер и сеттер в деле

Вот несколько задач на закрепление материала из предыдущих лекций:

11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Текущий год
Текущий год
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Собираем компьютер
Собираем компьютер
11
Задача
Java Syntax Pro Beta,  11 уровень,  6 лекция
Недоступна
Автопроизводитель
Автопроизводитель
Комментарии (470)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Anonymous #6463865
Уровень 12
27 октября, 06:02
package com.javarush.task.pro.task10.task1014;
/* Купи 10 батонов */

public class Market {
    private static boolean hasEggs = true;

    public static void main(String[] args) {
        hasEggs = false;
        makePurchases(hasEggs);
    }

    public static void makePurchases(boolean hasEggs) {
        if (hasEggs) {
            System.out.println("Купил 10 батонов");
        } else {
            System.out.println("Купил 1 батон");
        }
    }
}
Euraks Backend Developer
27 сентября, 04:59
🦔
Loony
Уровень 14
21 сентября, 19:35
Не знаю, зачем, но поставьте лайк и напишите коммент, все хотят достижение, я тоже хочу (ТУТ КТО-НИБУДЬ ЕСТЬ!?)
SERGEY94
Уровень 26
16 июня, 08:41
Я один такой слишком тупой, что все задачи кажутся максимально сложными?
Vlad Lipski
Уровень 28
27 марта, 17:50
27.03.2026 ур11, л6
Zoldy12
Уровень 13
3 февраля, 15:52
Поставьте лайк и напишите коммент, чтобы я получил достижение
Anonymous #3466115
Уровень 19
6 февраля, 16:55
коммент
Anatoly Chelushkin
Уровень 16
20 сентября, 06:20
напишите коммент
Grigoryvvv
Уровень 28
Expert
16 декабря 2025, 21:00
17.12.2025 / 11 уровень
C0N5P1RACY QA Automation Engineer
12 декабря 2025, 17:06
ooOOo спасибо папаша что подарил мне эти - десять задач - черного цвета двадцатого века
Elena
Уровень 1
3 декабря 2025, 08:47
Задача про материки ввела в ступор, ибо зачем оно именно так - непонятно. При такой реализации можно насоздавать 100500 Африк, и у каждой будет своя площадь. Но если абстрагироваться от реальности и решать задачу просто ради задачи - ок
Soda
Уровень 19
23 марта, 15:56
а вы бы как сделали? можно просто сделать переменную площади в каждом классе статичной и дело с концом
Игорь Лупац
Уровень 48
3 ноября 2025, 00:27
Грязный хак 🙂
public class Solution {

    public static void main(String[] args) {
        String[] memory = {"object15", null, null, "object2", null, null, null, "object32", null, "object4"};
        executeDefragmentation(memory);
        System.out.println(Arrays.toString(memory));
    }

    public static void executeDefragmentation(String[] array) {
        int nullsCounter = 0;
        ArrayList<String> strs = new ArrayList<>();

        for (int i = 0; i < array.length; i++) {
            if (array[i] == null) {
                nullsCounter++;
            } else {
                strs.add(array[i]);
            }
        }

        for (int i = 0; i < nullsCounter; i++) {
            strs.add(null);
        }

        array = strs.toArray(array);
    }
}
Anton Pohodin
Уровень 27
12 декабря 2025, 11:24
С помощью олдскульного метода swap это выглядело бы так:
public static void executeDefragmentation(String[] array) {
        //напишите тут ваш код
        for (int i = 0; i < array.length; i++) {
            for (int j = 0; j < array.length - i - 1; j++) {
                if (array[j] == null && (j + 1) < array.length) {
                    String temp = array[j + 1];
                    array[j + 1] = null;
                    array[j] = temp;
                }
            }
        }
    }
А теперь представьте, что это решение можно было бы записать одной строкой(!). Что-то вроде этого:
Arrays.sort(array, Comparator.nullsLast(Comparator.naturalOrder()));
Вот ради этих знаний и стоит учить Java.
Farhad M.
Уровень 31
10 января, 09:45
Вы пришли к такому решению в одну строку уже после прохождения основных блоков курса? Я нахожу такое решение не совсем очевидным. У меня оно вышло гораздо сложнее.
Anton Pohodin
Уровень 27
10 января, 12:36
Поверьте, если у вас будет идти речь о скорости написания кода или важно будет его быстродействие (время выполнения), вы предпочтете именно такой способ решения. К этому решению я пришел после прохождения курса Java 25 SELF.
Saruman71
Уровень 35
1 марта, 11:08
Решение в одну строку! Это именно то, почему я захожу читать комментарии!