Random 使用异常

package 发红包;

import java.util.ArrayList;
import java.util.Random;

public class Member extends User{
public Member() {
}

public Member(String name, int money) {
    super(name, money);
}
public void receive(ArrayList<Integer> list){
    int index = new Random().nextInt(list.size());
    int delta = list.remove(index);
    int money = super.getMoney();
    super.setMoney(delta + money);
}

}

Exception in thread "main" java.lang.IllegalArgumentException: bound must be positive
at java.base/java.util.Random.nextInt(Random.java:388)
at 发红包.Member.receive(Member.java:14)
at 发红包.MainRedPackage.main(MainRedPackage.java:17)

你哪里调的receive方法?看一下,这个问题出现于你的list.size可能等于0了

img

img

img

img


random.nextInt(1);参数要大于0才可以的