我正在尝试实现一种洗牌方法来洗牌数组类中的牌。
代码如下:
public void shuffle()
{
Card holderCard = new Card();
for (int x = 0; x < 1000; x++)
{
spot1 = rnd.nextInt(52);<<<<<<<
spot2 = rnd.nextInt(52);
holderCard = deck[spot1];
deck[spot1] = deck[spot2];
deck[spot2] = holderCard;
}
}
每次我运行程序并进入随机方法时,我都会得到一个与<<<<<<的java.lang.NullPointerException
。
我真的不知道为什么或如何,但这种方法只是应该改变数组中卡片的位置。
你应该在使用
rnd
变量之前对其进行初始化:
Random rnd = new Random ();
可能是您刚刚声明了变量rnd
并且没有像初始化它一样初始化它
Random rnd = new Random ();