Как работает return Java

Изучая Java в голове никак не укладывается - как работает return и в каких случаях его используют. Перечитал много разной информации и порешал для себя много разных задач. Придумав для себя задачку создать простенький калькулятор (если это вообще можно назвать таковым)

public static int Plus()
   {
       System.out.print("Сколько чисел вы хотите сложить?:" );
       Scanner count = new Scanner(System.in);
       int num = count.nextInt();
       System.out.println("Количество чисел которые вы хотите сложить = " + num);
       int [] index = new int[num];
       int sum = 0;
       //System.out.println("Text  lenght = " + index.length);
       for (int i=0; i<index.length; i++)
       {
           System.out.print("Введите ["+i+"] число: ");
           int znach = count.nextInt();
           index[i] = znach;
           System.out.println("Значение элемента ["+i+"] = " + index[i]);
           sum = index[i]+sum;
       }

       return sum;
   }

}

При вызове метода в main - все проходит удачно и даже выдает верный результат

if (YM == 1) {
            System.out.println("Сумма значений = " + Plus());
        } else
        {
            System.out.println("Другие действия временно недоступны!!!!");

        }

Однако до меня так и не доходит, почему после выполнения первого условия сначала выполняется метод Plus() - а только потом после окончания действия вызывается System.out.println с результатом. Как это работает? Заранее благодарен за объяснение данного момента


Ответы (1 шт):

Автор решения: Igor

Это

System.out.println("Сумма значений = " + Plus());

работает вот так:

int temp1 = Plus();
String temp2 = "Сумма значений = " + temp1;
System.out.println(temp2);
→ Ссылка