Der vom Objekttyp erfasste Wert muss in den Zeichenfolgentyp konvertiert werden toString (), String.valueOf (), Cast-Konvertierung usw. Es gibt verschiedene Konvertierungsmöglichkeiten, aber gibt es Unterschiede? Nächster, Am meisten hat mich interessiert, wann der Wert des erfassten Objekttyps null war. Ich habe mich gefragt, ob ein Fehler auftreten würde, also habe ich ihn nachgeschlagen. Wenn Sie das Ergebnis an die erste Stelle setzen ...
toString() | String.valueOf() | Cast-Konvertierung |
---|---|---|
NullPointerException | String"null" | null |
test.java
public static void main(String[] args) {
Object testNull = null; //Objekttyp Nullerstellung
String testNullString1 = testNull.toString(); // toString()Umwandlung durch
String testNullString2 = String.valueOf(testNull); // String.valueOf()Umwandlung durch
String testNullString3 = (String) testNull; //Cast-Konvertierung
//Speichern Sie jeden konvertierten Wert in Map
LinkedHashMap<String,String> map= new LinkedHashMap<>();
map.put("toString()",testNullString1);
map.put("String.valueOf()",testNullString2);
map.put("Cast-Konvertierung",testNullString3);
//Geben Sie jedes Konvertierungsergebnis aus
for(Map.Entry<String, String> mapString : map.entrySet() ) {
if(mapString.getValue() == null) {
System.out.println(mapString.getKey() +"Konvertiert mit wird es null.");
}else if(mapString.getValue().equals("null")) {
System.out.println(mapString.getKey() +"Konvertiert mit\"null\"werden.");
}else {
System.out.println(mapString.getKey() +"Beim Konvertieren wird es zu etwas anderem.");
}
}
}
Ausführungsergebnis 1
Exception in thread "main" java.lang.NullPointerException
at Test_CastNull.main(Test_CastNull.java:11)
"NullPointerException" tritt bei der Konvertierung von toString () auf. Es scheint sicher, toString () nicht zu verwenden. Kommentieren Sie dann den Teil von toString () im obigen Testcode aus und führen Sie ihn erneut aus.
Ausführungsergebnis 2
String.valueOf()Konvertiert mit"null"werden.
Durch Cast-Konvertierung konvertiert, wird es null.
Natürlich müssen Sie vorsichtig sein, wenn Sie mit null umgehen (derjenige, der sein kann).
Recommended Posts