У меня была проблема в течение нескольких дней, я не могу понять, что такое тип метода Void. Какова цель метода, который не возвращает значение (что означает, что метод не имеет возвращаемого значения метода, мой опыт такого объяснения состоит в том, что метод ничего не делает)? Мне это нужно для экзамена по программированию, который скоро будет, а в книгах всегда написано одно и то же "Метод Void не возвращает значение".
Я думал, что методы с таким типом возвращаемого значения служат только для переопределения самих себя. Может быть, у меня проблема, потому что я связываю термин «Не возвращает значение» с Mathlab, потому что в Mathlab, если я поставлю двоеточие в конце команды, команда будет выполнена, но ничего не вернет.
Matlab, например:
x = [ 90 0 0 ];
s=sin(x);




Метод void не означает, что он ничего не делает, это означает, что его работа выполняется без возврата результата.
Этот метод выполняет задачу, но ничего не возвращает.
например, хорошими примерами являются методы установки.
в этом примере setFirstname — это метод, который присваивает значение первому поданному имени.
public class Person {
private String firstname;
public void setFirstname(String s) {
firstname = s;
}
public String getFirstname() {
return firstname;
}
}
Давайте использовать это
public class Main {
public static void main(String[] args) {
Person person = new Person();
person.setFirstname("Ali");
String personFirstname = person.getFirstname();
System.out.println(personFirstname);
}
}
вывод будет:
Али
Как видите, когда мы используем метод getFirstname и печатаем возвращаемое им значение, становится ясно, что поле firstname изменилось.
Кто выполняет эту задачу?
setFirstname метод.
Хотя этот метод не имел конкретного результата, он делал что-то важное.
Проще говоря, когда мы говорим, что метод ничего не возвращает, это означает, что метод не возвращает значение, которое можно присвоить переменной или использовать в выражениях. Ниже приведен пример такого:
public class SumOfNumbers {
public static void main(String[] args) {
//you can choose to first initialize the numbers
int num1 = 10;
int num2 = 15;
//call the method to add the two numbers
add(num1,num2);
//alternatively call the method and pass the numbers direct
System.out.println();//to print new line between the two solutions
add(10, 15);
}
//the method takes two numbers, finds the sum, prints the sum
public static void add(int a, int b){
int sum = a + b;
//print the sum
System.out.println("The sum of " + a + " and " + b + " is " + sum);
}
}
обратите внимание, что в основном методе требуется система вывода, поскольку метод уже имеет оператор вывода. система вывода, используемая в этом коде, предназначена для различения двух выходных данных, т.е. когда мы сначала инициализируем числа и когда мы передаем число непосредственно методу.
«Мой опыт такого объяснения состоит в том, что этот метод ничего не делает». Действительно? Вы никогда не сталкивались с методом, который что-то делает и возвращает
void. Или вы просто имеете в виду "мое предположение"?