int i=1;
int j=10;
if(i++ > --j)
{
System.out.print("i= " + i + " j= " + j);
}
Frage gestellt vonInterviewer Was die Ausgabe sein wird und warum?Was wird die Ausgabe und warum?
Ich habe diese Frage versucht und festgestellt, dass es keine Ausgabe geben wird, weil , wenn Bedingung falsch wird.
Ich kann diese Situation nicht verstehen, bitte jemand erklären?
'a ++' bedeutet, nimm den Wert von 'a' und füge dann einen hinzu,' --a' bedeutet, ziehe eins von a ab und nimm dann den Wert. Die 'if' Aussage, die Sie haben, sagt' wenn 1 mehr als 9 ist, was falsch ist. Nach der if-Anweisung bin ich 2 und j werde 9. – BretC
Diese Frage würde viel sinnvoller sein mit 'int i = 1; int j = 2; '! – Seelenvirtuose
@Seelenvirtuose stimme ich ganz zu. Aber ich stelle mir vor, dass der Interviewer die Operatoren "postfix" und "prefix" eingefügt hat, um OP auszuschalten und zu sehen, ob OP immer noch die Antwort erhält, wenn ein ungewöhnliches Problem auftritt. –