Ошибка: method PrintStream.println() is not applicable
class Main {
public static int namadd(int a , int b) {
return a+b;
}
public static void main(String[] args) {
int a=73,b=62;
System.out.println("a + b = %d + %d = %d",a,b,namadd(a,b));
}
}
Пожалуйста, обясните ошибку і напишить как будет правельно.
Ответы (4 шт):
Для форматированного вывода используйте printf() вместо println()
System.out.printf(string);
System.out.printf(format, arguments);
System.out.printf(locale, format, arguments);
Вместо запятых надо "+":
System.out.print("a + b = %d + %d = %d"+a+b+namadd(a,b));
Итог:
a + b = %d + %d = %d7362135
Используйте оператор + для объединения переменных и строк в одну строку.
Также у вас избыточная функция namadd. Сложение можно провести прямо в выводе.
class Main {
public static void main(String[] args) {
int a=73,b=62;
System.out.println("a + b = " + a + " + " + b + " = " + (a + b));
}
}
В Java есть 3 метода для вывода информации в консоль.
System.out.print();
System.out.println();
System.out.printf();
В чём их отличия? На самом деле, между System.out.print() и System.out.println() их фактически только одно: второй после вывода строки переводит курсор на новую строку, то есть
System.out.print("Hello");
System.out.print("Java");
Вывод:
HelloJava
System.out.print("Hello");
System.out.println("Java");
Вывод:
Hello
Java
Теперь, ответ на ваш вопрос. Вы скорее всего хотите использовать форматированный вывод. Для этого применяется метод System.out.printf(), где сначала передаётся строка с модификаторами, а дальше аргументы которые будут подстанавливаться на место модификаторов. Я вижу решение в
class Main {
public static int namadd(int a, int b) {
return a + b;
}
public static void main(String[] args) {
int a = 73, b = 62;
System.out.printf("a + b = %d + %d = %d", a, b, namadd(a,b));
}
}
О модификаторах можно почитать тут.