首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java 引用的有关问题

2013-07-08 
java 引用的问题现在有两个listprivate ListGroupPurchaseItem data null // 排序private ListGroup

java 引用的问题
现在有两个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被改变,要怎么办呢


[解决办法]
你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
        }

热点排行