Questo è il mio codice:println non stampa il valore atteso
public static void main(String[] arg)
{
String x = null;
String y = "10";
String z = "20";
System.out.println("This my first out put "+x==null?y:z);
x = "15";
System.out.println("This my second out put "+x==null?y:z);
}
La mia uscita è:
20
20
Ma mi aspetto questo:
This my first out put 10
This my second out put 20
Qualcuno potrebbe spiegare perché sto ricevendo "20" come output per entrambe le chiamate println?
La risposta di Sumit Singh spiega perché l'output è come è. Il motivo è la precedenza degli operatori, vedere [questo documento] (http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html) – jlordo
@coders Ho accettato – Suranga