А что не так с решением, когда для инициализации переменных для первого и второго минимального значения используем первые 2 введенных числа?
public static void main(String[] args) {
        int numberToCompare;
        Scanner inputData = new Scanner(System.in);
        int mostMin = inputData.nextInt();
        int lessMin = inputData.nextInt();
        while (inputData.hasNextInt()) {
            numberToCompare = inputData.nextInt();
            if (numberToCompare < mostMin) {
                lessMin = mostMin;
                mostMin = numberToCompare;
            }
            else if (numberToCompare < lessMin){
                lessMin = numberToCompare != mostMin ? numberToCompare : lessMin;
            }
        }
        lessMin = lessMin > mostMin ? lessMin : mostMin;
        System.out.println(lessMin);
    }