null 和“null"有什么区别?String.valueOf(String Object) [英] what is difference between null and "null" of String.valueOf(String Object)

查看:44
本文介绍了null 和“null"有什么区别?String.valueOf(String Object)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的项目中,我必须在某处使用 if n else 条件来检查空变量

in my project ,Somewhere I have to use if n else condition to check the null variables

String stringValue = null;
String valueOf = String.valueOf(stringValue);

但是当我检查条件时

  if (valueOf == null) {
        System.out.println("in if");
    } else {
        System.out.println("in else");
    }

然后输出是 "in else" ,为什么会这样?

then output is "in else" ,why this is happening?

推荐答案

这是String.valueOf源代码:-

public static String valueOf(Object obj) {
    return (obj == null) ? "null" : obj.toString();
}

如您所见,对于 null 值,它返回 "null" 字符串.

As you can see, for a null value it returns "null" string.

所以,

String stringValue = null;
String valueOf = String.valueOf(stringValue);

"null" 字符串提供给 valueOf.

gives "null" string to the valueOf.

同样,如果你这样做:-

Similarly, if you do: -

System.out.println(null + "Rohit");

您将获得:-

"nullRohit"

<小时>

编辑

另一个例子:

Integer nulInteger = null;
String valueOf = String.valueOf(nulInteger) // "null"

但在这种情况下.

Integer integer = 10;
String valueOf = String.valueOf(integer) // "10"

这篇关于null 和“null"有什么区别?String.valueOf(String Object)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆