Вы правы в предположении, что программа проверяет, находится ли a в пределах диапазона, и, учитывая, что результат оценки верен, она вернет значение связи с переменной a.В Java ключевое слово return означает, что программа вернет значение, связанное с ней, и остановит дальнейшее выполнение.
Что касается вашего вопроса о методе void.В Java и многих других языках есть нечто, называемое state , что означает, что существуют некоторые значения вне текущей области выполнения, например, в псевдокоде
int a = 0
public void inc (){
a++
}
Метод inc непринимать любые аргументы (он имеет арность 0), но увеличивает переменную a, которая определена вне области функции, которую он сам.Любой метод, который имеет возвращаемый тип, отличный от void, возвращает определенный тип.
Я надеюсь, что мой ответ был полезным.