Napisałem krótki kod Javy, który powoduje wyjątek NullPointerException. Czy ktoś ma wyjaśnienie tego? Kod:Dlaczego wyjątek NullPointerException występuje w skrócie IF
int val = 2;
Boolean result = (val == 0) ? false : ((val == 1) ? true : null);
również następujące (uproszczona wersja) kod spowoduje NullPointerException:
Object result = (false) ? false : (false ? true : null);
Ale:
int val = 2;
Boolean result = (val == 0) ? Boolean.FALSE : ((val == 1) ? true : null);
a to:
Object result = (false) ? Boolean.FALSE : (false ? true : null);
czy to:
Object result = (false) ? (Boolean)false : (false ? true: null);
nie robi?
'((val == 1)? True: null)' tutaj zmień 'null' na' false' ?? – noMAD
Użyj 'boolean' zamiast' Boolean', aby uniknąć wielu NullPointerExceptions – NINCOMPOOP
@TheNewIdiot To nie robi różnicy dla tego przypadku –