日期:2014-05-20 浏览次数:20975 次
public void subtract(List<List<User>> list, int x) {
User user;
int sub,sl;
List<User> l;
for (int i=0; i<list.size(); i++) {
l = list.get(i);
sub = x;
for (int j=0; j<l.size(); j++) {
user = l.get(j);
sl = user.getSl();
if (j==l.size()-1) {
user.setSl(sl-sub); // 最后一个直接减,哪怕会成为负数
// if(sl<sub) user.setSl(-1); //或者在减成负数后设成-1?你举的例子是-1
} else {
user.setSl(sl>=sub?sl-sub:0);
sub = sub - sl;
if (sub<=0) break;
}
}
}
}