集合对象的声明和初始化

需要实现的功能是从数据库中查数据封装为一个list集合,然后返回给前台将数据显示在表格中。

后台在定义list集合时无意中发现两种不同的写法会有不同 的结果出现,之前没太注意这两种写法的区别,发现错误之 后我查了一些资料,在这里总结一下:

1、List list = new ArrayList();//返回[]
2、List list;//返回null

获取到的list均为空,在返回给前台时第一种写法会报空指 针异常,而第二种写法直接返回数据列表空白无数据;

List list = null;是声明了一个类型是List的变量,但是 他指向(或者说是持有)null(空指针)的引用,这时候他 什么都做不了;只有当你给他实例化的时候,如下 list = new ArrayList() 或者 list = new LinkedList() 以后,才能确定他究竟是什么类型。

List list;是在栈区开辟一个空间放list引用,并没有创建 对象所以不知道该list是ArrayList还是LinkedList。当你 list= new ArrayList(); 就创建了ArrayList对象。并且把 开始创建的list引用指向这个对象。ArrayList和inkedList 都是List的实现类。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值