Member 13020202 Ответов: 1

Как заменить весь оператор system.out.println(sop) только одним оператором (JAVA).


Итак, это программа для сравнения двух чисел с помощью реляционного оператора. Например: 1234> 555(пользователь вводит), и мы должны проверить, работает ли этот код. и есть условие, что я должен использовать только одно утверждение Sop. Этот программный код просто отлично работает. но мне нужно избавиться от всех этих печатных заявлений.

Что я уже пробовал:

импорт java.util.Сканер;
Lab4 открытый класс
{
public static void main(String args[])
{
Вход сканера=новый сканер(System.in);
строковое выражение;
int exp=0;
Строка Val1=null, Val2=null;
Строка вычисления=нуль;
Системы.из.печать(" ");
Выражение=input. nextLine (). trim();
если(выражение.отделка().содержит ("в<")&&усилителя;!Выражение.отделка().содержит("="))
{
exp=Expression. trim (). indexOf("<");
Вычислить= " <";
Val1=Expression. trim (). substring(0, exp);
Val2=Выражение.отделка().подстрока(ехр+1,выражение.отделка().длина());
}
остальное, если(выражение.отделка().содержит("&ГТ;")&&усилителя;!Выражение.отделка().содержит("="))
{
exp=Expression. trim (). indexOf(">");
Вычислить= " >";
Val1=Expression. trim (). substring(0, exp);
Val2=Выражение.отделка().подстрока(ехр+1,выражение.отделка().длина());
}
остальное, если(выражение.отделка().содержит("&ЛТ;="))
{
exp=Expression. trim (). indexOf ("<=");
Вычислить= " <=";
Val1=Expression. trim (). substring(0, exp);
Val2=Выражение.отделка().подстрока(годен до+2,выражение.отделка().длина());
}
остальное, если(выражение.отделка().содержит("&ГТ;="))
{
exp=Expression. trim (). indexOf (">=");
Вычислить= " >=";
Val1=Expression. trim (). substring(0, exp);
Val2=Выражение.отделка().подстрока(годен до+2,выражение.отделка().длина());
}

int num1, num2;
num1=Integer.parseInt(Val1. trim());
пит2=целое число.parseInt(Val2.отделка());
если(расчет."равно" ("в<"))
{
если(num1< num2)
Системы.из.код println("правда");
ещё
Системы.из.код println(""+поля num1+"&ГТ;="+пит2+"");
}
остальное, если(расчет."равно" ("&ГТ;"))
{
если (num1> num2)
Системы.из.код println("правда");
ещё
Системы.из.код println(""+поля num1+"&ЛТ;"+пит2+"");
}
остальное, если(расчет."равно" ("&ЛТ;="))
{
если (num1<=num2)
Системы.из.код println("правда");
ещё
Системы.из.код println(""+поля num1+"&ГТ;="+пит2+"");
}
остальное, если(расчет."равно" ("&ГТ;="))
{
если (num1>=num2)
Системы.из.код println("правда");
ещё
Системы.из.код println(""+поля num1+"&ЛТ;"+пит2+"");
}
}
}

[no name]

Поэтому создайте функцию, которая печатает то, что вы хотите, на консоль. Почему это проблема?

Member 13020202

Итак, вы видите несколько утверждений sop под утверждениями if и else, мне нужно избавиться от них

[no name]

Хорошо, так что давай и делай это. Почему это проблема?

Member 13020202

Как мне это сделать, каждый оператор SOP формирует действие, если я удалю все это, я не получу результат

[no name]

Трудно читать? Создайте функцию, которая печатает ваши выходные данные. Вызовите эту функцию, когда вы хотите что-то напечатать. Одно печатное заявление, как вам и было велено. Разве вы не знаете, что такое функция? Вы знаете, как вызвать функцию?

Member 13020202

хммм, прости, я виноват.. Я не понимаю!

1 Ответов

Рейтинг:
1

Garth J Lancaster

Я бы добавил все строки, которые вы хотите напечатать, в массив, где вы в настоящее время используете s-o-p

В конце программы вы запускаете цикл for для печати содержимого массива с помощью одного оператора s-o-p


Member 13020202

Поэтому я не должен использовать петли, так как они еще не покрыты.

Member 13020202

Вы должны использовать метод theString indexOf хотя бы один раз.
Вы должны использовать метод строки подстроку, по крайней мере, один раз
Ваша программа должна содержать только ONESystem. out.printlnstatement.
Вы должны сравнивать строки, используя equals, а не==

Таковы условия