Passing null to String.valueOf in Java returns the string “null”
In Java, when an object containing null is passed to String.valueOf, the string “null” is returned.
The method of String.valueOf is as follows.
public static String valueOf(Object obj) { return (obj == null) ? "null" : obj.toString(); }
If obj is null, it returns “null”, which makes no sense.
In other words, null is also made “null” by the string, so you need to be careful.
When using String.valueOf, null should be considered.
The return value of this method is of type String, and the first argument can be anything; if it is null, the second argument is returned; if it is not null, the first argument is returned as a String. This method can be used to avoid returning the string “null”. valueOf. toString() method may fail due to null pointer, and valueOf will be “null”, so Objects.toString() is recommended. Note that passing null directly as an argument as shown below will result in null pointer.Objects.toString(first parameter,second parameter);
String str = Objects.toString(1, null);
System.out.println(str); // Returns a String type of 1.
str = Objects.toString(null, null);
System.out.println(str); // null is returned
String.valueOf(null);
コメント