深度克隆之后,list的addFist失效

深度克隆之后,

for(int i = 0 ; i < Configuration.ins_max;i++){
    current_dis = 0;
    next_dis = 0;

    current_dis = getCurrent_dis(current_ev, method, current_dis);
    Collections.shuffle(next_method.getRoute());//初始化后,打乱
    next_dis = getCurrent_dis(current_ev,next_method,next_dis);
    if(next_dis < current_dis){
        //如果打乱有效果,那么把current换成下一个
        method = next_method;
        next_method = method.deepClone();
    }
}
LinkedList linkedList = method.getRoute();
linkedList.addFirst(current_ev);
method.setRoute(linkedList);

如果最后进行了深度克隆,那么addFirst失效,如果没有,那么就不失效,目前还没找到原因。

如果是addLast也失效了,估计和指针有关,其中deepClone()我写了序列化的代码。不只这些,好多bug,是不是序列化的顺序造成的。

你可能感兴趣的:(java)