Ответы пользователя по тегу Java
  • Почему thymeleaf не работает?

    @barsty
    Попробуйте на вьюшке изменить строчку заголовка вот таким образом:
    <h2> Hello, <span> <th:block th:text="${name}">[name]</th:block></span> </h2>

    при этом редактор может продолжать подчеркивать "name" - хотя при запуске ошибок не будет)

    так можно попробовать добавить зависимостей в поме:
    <dependency>
        <groupId>org.thymeleaf</groupId>
        <artifactId>thymeleaf-spring5</artifactId>
        <version>3.0.15.RELEASE</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>5.3.14</version>
    </dependency>


    Просто не успел у себя уловить когда заработало, после добавления зависимостей или когда строчку поменял), но когда убрал зависимости, все продолжило работать.
    Ответ написан
    Комментировать
  • Как получить все значения элементов массива?

    @barsty
    1 вариант:
    public static int getMaxNumber(int[] numbers) {
            if (numbers.length < 1) {
                return 0;
            }
            int max = numbers[0];
            for (int i = 1; i < numbers.length; i++) {
                max = Integer.max(max, numbers[i]);
            }
            return max;
        }

    2 вариант:
    public static int getMaxNumber(int[] numbers) {
            return Arrays.stream(numbers).max().orElse(0);
        }
    Ответ написан
    Комментировать
  • Как получить определенное число в цикле с шагом?

    @barsty
    public static int getDrinksWithStep(int guestNumber, int step) {
            return IntStream.iterate(1, i -> i <= guestNumber, i -> i + step).sum();
        }
    Ответ написан
    Комментировать
  • Как вернуть самое большое число?

    @barsty
    public static double getResult(double a, double b) {
            // Создаем лист из результатов выражений 
            List<Double> array = List.of(a + b, a - b, a * b, a / b);
            // Возвращаем максимальное значение из списка
            return array.stream().max(Double::compareTo).get();
        }

    UPD:
    public static double getResult(double a, double b) {
            double maxA = Double.max(a + b, a - b);
            if (b == 0) {
                return maxA;
            }
            return Double.max(maxA, Double.max(a * b, a / b));
        }
    Ответ написан