文档章节

java中的null和""区别

w
 wlg910525
发布于 2014/06/09 18:56
字数 320
阅读 13
收藏 0

在String和对象中null和""还是比较容易区分的!但是在集合中,我一直以为null和""差不多是一样的,其实集合和String中的null和""是同一个概念。

在String中 给一个变量赋值String str=null;在栈中为其分配了内存存放Str(引用地址),但是在堆中这个str所指的对象不存在。当给一个变量赋值String str=""时,在栈中为其分配了内存存放Str(引用地址),也在堆中分配了这个str所指的对象,只不过这个对象里面没有内容是空的,但是确实可以找到的。

我以前里面一直以为当new了一个list  List<String> list = new ArrayList<String>(); 不对其赋值的话 遍历他的时候会报错,最后测试了下 不会报错的,代码如下:

 

最后想想其实是一个道理 当 new ArrayList<String>()对一个list赋值之后,就是对其初始化,会在内存的堆中分配空间存放他,但是其内容为空的而已;就相当于对String="";


© 著作权归作者所有

共有 人打赏支持
w
粉丝 3
博文 24
码字总数 8362
作品 0
杭州
高级程序员
私信 提问
Java每天10道面试题,跟我走,offer有!(三)

Java每天10道面试题,跟我走,offer有!(三) 21.final, finally, finalize的区别 22、finally是在异常处理时 23. Java中的String,StringBuilder,StringBuffer三者的区别? 24.GC是什么? 为...

Java干货分享
2018/11/14
0
0
Java每天10道面试题,跟我走,offer有!(五)

41.Iterator、ListIterator 和 Enumeration的区别? 42.Java 中 Set 与 List 有什么不同? 43.arraylist 与 vector 的区别? 44.什么类实现了List接口? 这里推荐一下我的Java后端高级技术群:...

Java干货分享
2018/11/16
0
0
java.lang.ThreadLocal类研究

java.lang.ThreadLocal类研究 1、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是thread local variable(线程局部变量)。也许把它命名为...

SDK4
2011/09/17
0
2
Groovy神奇的NullObject

在这篇文章里,我将向你展示Java和Groovy中不怎么明显的的区别。 让我们从下面这行代码开始: Object o = null 这条语句在Java和Groovy下都可以运行(只是在Java下需要在行尾加一个)。 然而...

翟志军
2014/04/18
0
2
Java FileInputStream

一、序言 IO操作,才程序中比较普遍,JAVA 中提出了IO/NIO 的概念,也一直在说NIO 比IO快,一直不知道原因,就想memcache 和ehcache 比较优劣一样,这些东西得自己看看如何实现的,才 知道区...

pczhangtl
2014/08/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS7 yum 安装git

CentOS7 yum 安装git 1.查看系统是否已经安装git 1 git --version 2.CentOS7 yum 安装git 1 yum install -y git 3.安装成功 4.卸载git 1 yum remove git  ...

linjin200
32分钟前
1
0
vue页面闪现源码的处理方法

1.添加样式 <style type="text/css"> [v-cloak] { display: none; } </style> 2.在app id上添加v-cloak指令 <div class="wrapper wrapper-content " id="app" v-cloak>......

qiang123
36分钟前
2
0
Hyperledger Fabric 实战(十二): Fabric 源码本地调试

借助开发网络调试 fabric 源码本地调试 准备工作 IDE Goland Go 1.9.7 fabric-samples 模块 chaincode-docker-devmode fabric 源码 步骤 添加本地域名 127.0.0.1 peer 127.0.0.1 orderer 用 ...

Jonluo
37分钟前
1
0
自然语言处理hanlp的入门基础

此文整理的基础是建立在hanlp较早版本的基础上的,虽然hanlp的最新1.7版本已经发布,但对于入门来说差别不大!分享一篇比较早的“旧文”给需要的朋友! 安装HanLP HanLP将数据与程序分离,给...

左手的倒影
39分钟前
1
0
KaliLinuxNetHunter教程实施刷机解锁Bootloader

KaliLinuxNetHunter教程实施刷机解锁Bootloader 当用户将前面的工作都准备完成后,即可开始刷机。其中,整个刷机过程分为三个步骤,分别是解锁Bootloader、刷入第三方Recovery和实施刷机。为...

大学霸
40分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部