@ehordyenko

Как правильно вызвать void метод в main?

вот как я пытаюсь вызвать :
System.out.println(real.increment(imaginary));

вот ошибка :
error: Class names, 'javac', are only accepted if annotation processing is explicitly requested
ComplexMain.java:14: error: incompatible types: void cannot be converted to Complex
                Complex res = real.increment(imaginary);


вот метод :
public void increment(Complex other) {
this.real += other.real;
this.imaginary += other.imaginary;
}


пытался так :
System.out.println(increment(imaginary));

но увы не работает((

как правильно?
  • Вопрос задан
  • 215 просмотров
Решения вопроса 1
zagayevskiy
@zagayevskiy Куратор тега Java
Android developer at Yandex
Ошибка в строке
Complex res = real.increment(imaginary);
и в
System.out.println(real.increment(imaginary));
такая же ошибка. Метод increment возвращает void, и изменяет внутреннее значение. void нельзя ничему присвоить, и нельзя никуда передать. Можешь считать это "пустотой", "ничем". void метод ничего не возвращает, поэтому его возвращаемое значение нельзя никуда присвоить.
Нужно разнести это в разные строки:
real.increment(imaginary);
System.out.println(real);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы