Самое большое число-палиндром, полученное умножением двух трехзначных чисел

Уровень 2, Задание 2

package com.gmail.potrapmax;

public class Main {

    public static void main(String[] args) {
        int maxPalindrome = search();
        System.out.println(maxPalindrome);
    }

    public static int search() {
        int max = 0;
        for (int i = 100; i < 999; i++) {
            for (int j = 100; j < 999; j++) {
                int num = i * j;
                boolean check = palindrome(num);
                if (check && max < num) {
                    max = num;
                }
            }
        }
        return max;
    }

    public static boolean palindrome(int num) {
        boolean check = true;
        String sNum = "" + num;
        char[] arr = sNum.toCharArray();
        for (int i = 0; i < arr.length - 2; i++) {
            if (arr[i] != arr[arr.length - 1 - i]) {
                check = false;
            }
        }
        return check;
    }
}

Предложенное вами решение верно