Я очень новичок в Java, и я пытаюсь сделать чат-бот. У меня есть основной метод, а затем метод с ответами. Хотя, когда я пытаюсь вызвать метод ответа в основном методе, он выделяет слово Response и говорит: метод Response в классе ChatCode не может применяться к заданным типам; требуется: java.lang.String; найдено: нет аргументов; Причина: фактические и формальные списки аргументов различаются по длинеПочему я не могу назвать этот метод в своей программе?
public class ChatCode{
public static String main(String input){
Scanner sc = new Scanner(System.in);
System.out.println("Hello!");
input = sc.nextLine();
while(input != ("Bye")){
Response();
}
System.out.println("Bye!");
}
Тогда это мой метод ответа
public static String Response(String output){
Scanner sc = new Scanner(System.in);
input = input.toLowerCase();
input = input.trim();
String output;
if(input.indexOf("hi!") >= 0
|| ("hi") >= 0
|| ("hello!") >= 0
|| ("hello") >= 0){
output = "Hello!";
}
else if(input.indexOf("whats up?") >= 0
|| ("what's up?") >= 0
|| ("whats up") >= 0
|| ("what's up") >= 0){
output = "Nothing much, how about you?";
}
else if(input.indexOf("how are you?") >= 0
|| ("how are you") >= 0){
output = "I am great, how about you?";
}
return output;
}
Любая обратная связь будет оценена !!!!
(0) 'input! = (" Bye ")' -> [Как сравнить строки в Java?] (Http: // stackoverflow.ком/вопросы/513832 /, как-ду-я-сравнить-стринг-в-Java); (1) 'Response (String output) {' ожидает аргумент, поэтому вы не можете вызывать его без ответа через 'Response()'; (2) имена методов должны начинаться с нижнего регистра. – Pshemo
Ваш метод 'public static String Response (String output) {' объявлен как требующий аргумент 'String', но вы используете' Response(); ', что не то же самое, вы должны передать ему' null 'или значение' String' – MadProgrammer
необходимо передать здесь String, тогда как (input! = («Bye»)) { Response(); // Нравится это -> Response (input); } –