java 引用的问题

ambitiousyoyo 2013-07-03 10:41:55
现在有两个list
private List<GroupPurchaseItem> data = null; // 排序
private List<GroupPurchaseItem> dataDefault = null; // 默认顺序


构造方法中给他们赋值
this.data = data;
this.dataDefault = data;


接着我给data做了一个排序,Collections.sort(data, new SortByTimeDesc());
排完之后发下dataDefault的顺序也被排了....我不想dataDefault被改变,要怎么办呢

...全文
195 2 打赏 收藏 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2013-07-03
  • 打赏
  • 举报
回复
没看到还有copy方法,谢啦
北吹 2013-07-03
  • 打赏
  • 举报
回复
你2个引用指向同一个对象了,先拷贝下。

        public static void main(String[] args)throws IOException,ClassNotFoundException{
        	List<Integer> a = new ArrayList<Integer>(3);
        	a.add(1);
        	a.add(3);
        	a.add(2);
        	List<Integer> b = new ArrayList(Arrays.asList( new Object[a.size()]));
        	Collections.copy(b, a);
        	Collections.sort(a);
        	System.out.println(a);//123
        	System.out.println(b);//132
        }

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧