Самое интересное, что по условию задачи программа должна выдавать ошибку, если введено менее двух чисел, хотя в "правильном" ответе это условие игнорируется.
Scanner scanner = new Scanner(System.in);
    int min = scanner.nextInt();
    int min2 = scanner.nextInt();

    int r = min;
    if (min > min2){
        min = min2;
        min2 = r;

    }

    while (scanner.hasNextInt()) {
        int t = scanner.nextInt();

        if (t < min){
            int temp = min;
            min = t;
            min2 = temp;
        } else if (t < min2 && t != min) {
            min2 = t;
        }


    }

    System.out.println(min2);