Кирилл Самородов
Но в целом это плохая практика в консоль выводить в методе. Разграничай ответственность, калк - считает, рисовать ему не надо
Кирилл Самородов
return void;?
Без ретурн вообще
Wietcewitch
Кирилл Самородов
а как тогда?
Просто поставь в референсе метода всесто String - void
Кирилл Самородов
Public static void calc И убери ретурн, если есть
Кирилл Самородов
Да
Mikhail
Почему?
Перформанс, сеьюрити, сайд эффекты - нужное подчеркни.
Wietcewitch
Да
Не работает всё равно
Кирилл Самородов
Еще - не очень хорошо сканер внутри калк ставить, нужно сначала ввести данные, потом вызвать метод, который вернет результат и потом его вывести
Кирилл Самородов
Не работает всё равно
Какую ошибку при компиляции выдает?
Кирилл Самородов
Да стой
Wietcewitch
Какую ошибку при компиляции выдает?
Никакую, он просто не включается даже
Кирилл Самородов
Ты мейн то оставил?
Azamat
Никакую, он просто не включается даже
Ты через дебаггер запускаешь?
Wietcewitch
Кирилл Самородов
Ты Мейн удалил
Кирилл Самородов
Откуда он запускать то программу будет
Wietcewitch
Ты Мейн удалил
так нельзя же метод в методе
Кирилл Самородов
Можно 2 метода Класс Мейн{метод мейн; метод калк} Где мейн вызывает калк
Wietcewitch
Короче, всё плохо
Кирилл Самородов
Вот так, только все в одном классе
Кирилл Самородов
Ну вот, а потом будут говорить что Джава говно((
Wietcewitch
Да конечно гавно
Asiman
Гавно
Wietcewitch
калькулятор написал, но не могу разобраться с методами, классами и абракадаброй public void etc
Кирилл Самородов
Заскринь что у тебя сейчас
Wietcewitch
И из-за этого придется весь калькулятор переписывать
Кирилл Самородов
Ничего не надо переписывать
Wietcewitch
Ничего не надо переписывать
Надо без rпеременной с результатом это не сработает, как я понял
Кирилл Самородов
Ну вот между 3 и 4 строкой напиши psvm и нажми ентер
Кирилл Самородов
Кирилл Самородов
Это IntelliJ idea?
Wietcewitch
Работать то будет
Надо чтобы как в задании было реализовано
Кирилл Самородов
А как в задании то?
Wietcewitch
А как в задании то?
- Реализуй класс Main с методом public static String calc(String input)
Кирилл Самородов
Ну без Майна оно не запустится, это требование - в программе должен быть метод мейн
Wietcewitch
Ну так ты реализовал
Только код не работает
Кирилл Самородов
Ну такого требования не было
Azamat
Только код не работает
Можешь создать другой класс с методом main и там запускать этот метод. Можешь создать main метод в Main классе.
Кирилл Самородов
Напиши между 3 и 4 строкой public static void main(String[] args){}
Кирилл Самородов
Теперь в мейне напиши Main.calc()
Кирилл Самородов
И заскринь
Кирилл Самородов
Не тааам
Кирилл Самородов
public static void main(String[] args){Main.calc()}
Кирилл Самородов
Ну как?
Кирилл Самородов
Ты издеваешься чтоль, между скобками блин!
Кирилл Самородов
{ Main.calc(); }
Wietcewitch
Кирилл Самородов
Скобки и точку с запятой поставь
Wietcewitch
Wietcewitch
Кирилл Самородов
А, у тебя эксепшен же
Кирилл Самородов
try{ Main.calc(); } catch (Exception e){ }
Кирилл Самородов
Вместо Main.calc();
Azamat
Ну вот ты написал для calc метода throws Exception. Ты знаешь для чего это нужно?
Кирилл Самородов
Ну так ее нужно обработать
Wietcewitch
ну так он обрабатывает, если вводишь глупость
Wietcewitch
Кирилл Самородов
Он выбросит исключение
Кирилл Самородов
try{ Main.calc(); } catch (Exception e){ }
Короче, напиши так, и посмотри что будет
Wietcewitch
Короче, напиши так, и посмотри что будет
Работает, но исключения теперь не работают
Кирилл Самородов
А что ты хочешь, чтобы они делали?
Wietcewitch
Чтобы выводился текст в консоль при ошибках. По типу "Введенное значение неверно"
Кирилл Самородов
Ну и зачем тебе эксепшены , сделай обычный System.our.println()
Кирилл Самородов
Эксепшены не для этого созданы