Java引用传递问题

if (planSuccessServices.contains(value)) {
   service.put("choose", "yes");
}
successServices.add(service);

if (planFailServices.contains(value)) {
   service.put("choose", "yes");
}
failServices.add(service);


此时将会导致,两次add的service其实是同一个引用,所以后一个的状态修改会影响到前一个

解决办法:

if (planSuccessServices.contains(value)) {
   service.put("successchoose", "yes");
}
successServices.add(service);

if (planFailServices.contains(value)) {
   service.put("failchoose", "yes");
}
failServices.add(service);

 

全部评论

相关推荐

不愿透露姓名的神秘牛友
05-01 13:13
ecece:这么明目张胆虚报就业率啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务