Привет тем, кто не понимает сути или помогает. Объясните, пожалуйста, почему мое решение не проходит, а подсмотренное решение проходит идеально. Если вы распишите мне построчно движение переменных, я буду только рад, потому что я запутался в методах, в их создании и использовании... (меняется только if в main) Мой код:
public class Solution {
    public static void main(String[] args) {
        displayClosestToTen(8, 11);
        displayClosestToTen(7, 14);
    }

    public static void displayClosestToTen(int a, int b) {
        if (abs(a) < abs1(b)) {
            System.out.println(abs(a));
        }
        else {
            System.out.println(abs1(b));
        }

    }

    public static int abs(int a) {
        if (a < 0) {
            return -a;
        } else {
            return a;
        }
    }

    public static int abs1(int b) {
        if (b < 0) {
            return -b;
        }
        else {
            return b;
        }
    }
}
Подсмотрел:
public class Solution {
    public static void main(String[] args) {
        displayClosestToTen(8, 11);
        displayClosestToTen(7, 14);
    }

    public static void displayClosestToTen(int a, int b) {
        if (abs(a - 10) < abs1(b - 10)) {
            System.out.println(abs(a));
        }
        else {
            System.out.println(abs1(b));
        }

    }

    public static int abs(int a) {
        if (a < 0) {
            return -a;
        } else {
            return a;
        }
    }

    public static int abs1(int b) {
        if (b < 0) {
            return -b;
        }
        else {
            return b;
        }
    }
}