Ho sentito numerose volte che durante il confronto di stringhe in Java, per evitare l'eccezione del puntatore nullo, dovremmo usare "abc" .equals (myString) invece di myString.equals ("abc"), ma la mia domanda è, è questa idea già problematico in termini di business logic?
Supponi che myString non debba essere vuoto in condizioni normali, se usiamo semplicemente "abc" .equals (myString) per evitare un'eccezione del puntatore nullo, potremmo perdere alcuni bug che sono correlati alla causa principale delle stringhe null (es: a modulo con campo incompleto o una colonna mancante di database corrispondente), quindi dovremmo lasciare che le eccezioni del puntatore nullo vengano generate in modo naturale, o sempre prima di selezionare null separatamente:
if(myString==null){
}else if(myString.equals("abc")){
}
per assicurarci che possiamo trovare bug o almeno avere percorsi per gestire condizioni anomale che causano input nulli, è vero? E anche null è considerato valido, dovrei comunque scrivere qualcosa come:
if(myString==null || myString.equals("")){
}
per sottolineare o ricordare ad altri sviluppatori che ora presumo che null sia normale?