您的位置:首页 > 其它

ArrayList.add()添加重复元素

2015-11-09 11:46 274 查看
这两天被这个问题折磨的死去活来。

我创建了一个全局变量ArrayList<ArrayList<E>> a 和另一个全局变量ArrayList<E> b,往a中添加b,最后发现添加的数据都是一样的。一开始我以为是我b没有clean(),后来搞了半天,返现输出竟然都是添加最后一个数据。

网上找了找关于ArrayList.add(),当添加的时候添加的并不是实体类,而是实体类的引用,相当于指针,存储的是也是存储的指针。所以我添加的都是b的引用,而这个引用并没有变化,所以最后ArrayList中的数据均指向最后一次封装的b。

所以当往ArrayList中添加数据的时候需要重新new对象
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: