公文高手,超级方便的公文写作神器! 立即了解


第一次月考总结与反思

扩展阅读:java中null和“”的区别详解

null和""的区别问题一:

null和""的区别strings=null;

string.trim就会抛出为空的exceptionstrings="";

string.trim就不会抛,为什么。答。

null代表声明了一个空对象,根本就不是一个字符串。

""代表声明了一个对象实例,这个对象实例的值是一个长度为0的空字符串。

null代表声明了一个空对象,对空对象做任何操作都不行的,除了=和==""是一个字符串了,只是这个字符串里面没有内容了

strings=null;只是定义了一个句柄,也就是说你有了个引用,但是这个引用未指乡任何内存空间

strings="";这个引用已经指向了一块是空字符串的内存空间,是一个实际的东东了,所以你可以对它操作,而不用担心什么了

你说数字0和没有是不是一种概念啊。。道理一样的

而且,null可以赋值给任何对象.""就不行了.

这里""和null绝对是两个概念

""代表一个字符串存在,它的值就是“”

null代表字符串根本没有实际的值,你并不知道它是什么。。。

哦,我明白了,意思就是stringstring=null跟stringstring;是一回事儿

null是空对象""是空字符串

strings=null;//null是未分配堆内存空间

stringa;//分配了一个内存空间,没存入任何对象stringa="";//分配了一个内存空间,存了一个字符串对象

问题二:

strings;和strings=null;和strings="a";有什么区别。

针对这三种情况,使用out.println(s);的时候,第一个会出现异常,第二个会输出null.第三个则会输出a.

这是为什么呢。这三句声明语句,各自作了什么呢。答。

第一个只是定义了一个string类型变量s,并没有给它赋初值,在java中,默认在使用一个变量的时候必须赋予它初值(降低风险)。第二个和第三个都定义了string类型变量s,并赋予它初值,只不过第二个赋予的值为null(空)罢了

主要要理解的是strings;s为一个引用~~它不是对象第一个是没有初始化的引用;第二个为空引用;


(未完,全文共2735字,当前显示911字)

(请认真阅读下面的提示信息)


温馨提示

此文章为6点公文网原创,稍加修改便可使用。只有正式会员才能完整阅读,请理解!

会员不仅可以阅读完整文章,而且可以下载WORD版文件

已经注册:立即登录>>

尚未注册:立即注册>>

6点公文网 ,让我们一起6点下班!