Хотел спросить, читаю в данный момент литературу по Java, но так и не понял почему void ничего не возвращает.
Например:
public void firstMethod(){
System.out.println("Hello!");
}
По сути, нам возвращается слово "Hello" как я понимаю.
Но забил в Intellij idea код:
public void run(){
return 10;
}
Идея начала ругаться, мол измените на public int run()
.
Не очень понял (ничего не возвращающий void), объясните пожалуйста.
Функция должна возвращать какою-то структуру при её вызове (или же ничего не возвращать). void - спецификатор, который указывает, что функция не должна ничего возвращать. Важно отметить, что под возвратом понимается return {...}, а не сама работа функции. Т.е. если у вас функции вида int Method(), то в самой функции обязательно должен присутствовать возврат return .
Void же такого возврата не предполагает. Однако return может служить для досрочного завершения работы функции.
Имеется ввиду, что не возвращается никаких значений переменных. Соответственно тип возвращаемого значения не указывается и пишется void.
Когда вы вызываете какой-либо метод в коде, представляйте себе в уме вместо него то, что хотите от него получить. Что происходит в теле метода в это время нас не интересует: там может что-то печататься на консоль, могут создаваться какие-то объекты, могут даже вызываться другие методы или все сразу. Главное - это то, что он должен вернуть на свое место, когда его вызывают. Посмотрите на этот пример:
public static **int** sum(int a, int b) {
return a + b;
}
int sumResult = sum(15, 23);
И на этот:
public static **void** sumAndPrint(int a, int b) {
System.out.println(a + b);
}
Первый метод мы можем использовать, чтобы, вызывая его, сразу записать результат в какую-то переменную. Второй же метод ничего не возвращает и может использоваться... ну, просто так, чтобы посмотреть на результат в консоли.
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
скажите пожалуйста, как можно нарисовать квадратную спираль ? Я сперва пробовал с помощью линий нарисовать, но не совсем получилось, может...
Есть строка из которой нужно выбрать все слова, которые начинаются с большой буквы и записать в новую строку, а с маленькой также в новую строкуПонимаю,...
Моя маленькая программа работает в консоли и читает данные из файла и показывает пользователю условно говоря и при соблюдении некоторых...