Будет работать троичный условный оператор, который упоминали другие. Предполагая, что вы ищете творческие способы сделать это, а не практические, вот другой метод:
int x = 5;
int y = 10;
while(y > x){
System.out.println("It is true that y is bigger than x.");
return;
}
System.out.println("It is false that y is bigger than x.");
while
просто действует как причудливый if
, потому что return
означает, что в противном случае бесконечный цикл будет выполняться не более одного раза.
Вот еще один пример, который вместо этого основан на логической оценке короткого замыкания:
public static void main(String...args){
int x = 5;
int y = 10;
boolean answer = (y > x);
boolean testTrue = answer && printTrue();
boolean testFalse = testTrue || printFalse();
}
private static boolean printFalse() {
System.out.println("It is false that y is bigger than x.");
return true;
}
private static boolean printTrue() {
System.out.println("It is true that y is bigger than x.");
return true;
}
Конечно, вы не должны делать это в реальном производственном коде, но может быть интересно подумать о неортодоксальных способах кодирования чего-либо, и это может быть полезно для изучения языка.