深度克隆之后,
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<Point> linkedList = method.getRoute();
linkedList.addFirst(current_ev);
method.setRoute(linkedList);
如果最后进行了深度克隆,那么addFirst失效,如果没有,那么就不失效,目前还没找到原因。
如果是addLast也失效了,估计和指针有关,其中deepClone()我写了序列化的代码。不只这些,好多bug,是不是序列化的顺序造成的。