java里null集合和空集合占内存吗
对于堆内存而言,null集合没有占用内存,空集合占用了内存,对于栈内存而言,都占用了内存
1.集合为空
=
null
如
List
l
=
null;此时在栈内存中创建了一个变量l,没有引用到堆内存中的任何数据
2.集合个数为0,
如List
l
=
new
ArrayList();
此时在栈内存中创建了一个变量l,在堆内存中创建了一个
ArrayList对象,l引用了改对象
java里null占几个字节
java里面null不占字节。如果一个引用指向null,该应用就不再指向堆内存中的任何对象。当然,这个对象引用的大小是4个字节。
java 里对象使用后设置为NULL会减少内存占用吗
设置为null,当内存吃紧时,就会清除对象,因为它空引用,就会被清除
但是你设置为null,未必会立即清除,你可以调用System.gc( );
java什么时候用null,collectins
null是代表不确定的对象
Java中,null是一个关键字,用来标识一个不确定的对象。因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。
比如:int a = null;是错误的。Ojbect o = null是正确的。
Java中,变量的适用都遵循一个原则,先定义,并且初始化后,才可以使用。我们不能在int a后,不给a赋值,就去打印a的值。这条对对于引用类型变量也是适用的。
有时候,我们定义一个引用类型变量,在刚开始的时候,无法给出一个确定的值,但是不指定值,程序可能会在try语句块中初始化值。这时候,我们下面使用变量的时候就会报错。这时候,可以先给变量指定一个null值,问题就解决了。例如:
Connection conn = null;
try {
conn = DriverManager.getConnection(“url”, “user”, “password”);
} catch (SQLException e) {
e.printStackTrace();
}
String catalog = conn.getCatalog();
如果刚开始的时候不指定conn = null,则最后一句就会报错。
登录后复制
二、null本身不是对象,也不是Objcet的实例
null本身虽然能代表一个不确定的对象,但就null本身来说,它不是对象,也不知道什么类型,也不是java.lang.Object的实例。
可以做一个简单的例子:
null是对象吗? 属于Object类型吗?
if (null instanceof java.lang.Object) {
System.out.println(“null属于java.lang.Object类型”);
} else {
System.out.println(“null不属于java.lang.Object类型”);
}
登录后复制
输出结果为:null不属于java.lang.Object类型
三、Java默认给变量赋值
在定义变量的时候,如果定义后没有给变量赋值,则Java在运行时会自动给变量赋值。赋值原则是整数类型int、byte、short、long的自动赋值为0,带小数点的float、double自动赋值为0.0,boolean的自动赋值为false,其他各供引用类型变量自动赋值为null。
四、容器类型与null (重点)
List:允许重复元素,可以加入任意多个null。
Set:不允许重复元素,最多可以加入一个null。
Map:Map的key最多可以加入一个null,value字段没有限制。
数组:基本类型数组,定义后,如果不给定初始值,则java运行时会自动给定值。引用类型数组,不给定初始值,则所有的元素值为null。
五、null的其他作用
1、判断一个引用类型数据是否null。 用==来判断。
2、释放内存,让一个非null的引用类型变量指向null。这样这个对象就不再被任何对象应用了。等待JVM垃圾回收机制去回收。
一站式购物平台!超低折扣!
精选推荐
广告
C#—null的使用
115阅读·0评论·0点赞
2021年10月29日
Java中null的意义及其使用时注意事项
1557阅读·0评论·5点赞
2018年11月22日
Java中null是什么?
132阅读·0评论·0点赞
2022年10月15日
java中null的使用方法,在Java中重载方法中使用null
53阅读·0评论·0点赞
2021年2月24日
九、Null在Java中的精确表示
32阅读·0评论·0点赞
2019年10月6日
「PHP基础知识」空值(null)的使用
105阅读·0评论·0点赞
2022年8月1日
沧州通知:0抵押借款,随借随还,最高借【200000】元
正规贷款咨询
广告
深入Java关键字null
327阅读·0评论·2点赞
2008年5月28日
NULL的用法
3667阅读·0评论·5点赞
2016年1月19日
java关键字null_Java 之关键字 null 使用总结
292阅读·0评论·0点赞
2021年2月12日
c语言中的null_如何在C中使用NULL
9847阅读·0评论·6点赞
2020年8月31日
java中的null
4081阅读·0评论·0点赞
2021年10月2日
JAVA中关于null知识点的总结梳理
548阅读·0评论·0点赞
2017年6月13日
在java中null的作用_在java中避免使用!= null有什么好处?
357阅读·0评论·0点赞
2021年3月13日
正确使用空(null)指针
6440阅读·0评论·6点赞
2020年8月9日
java isnull函数_工具类_IsNull
832阅读·0评论·0点赞
2021年3月1日
JAVA中的NULL
108阅读·0评论·0点赞
2016年10月19日
java null_Java中null的使用方法
167阅读·0评论·0点赞
2021年2月12日
null 的用法
163阅读·0评论·0点赞
2011年5月12日
isnull nullif case
991阅读·0评论·0点赞
2010年6月25日
java语言应用中null的处理解析
111阅读·0评论·0点赞
2014年11月11日
去首页
看看更多热门内容
评论1
LOVELikeAI
赞
java只会对成员变量自动赋值吧?局部变量不会。