关于洗牌的问题

来源:7-1 简易扑克牌游戏

K_Muxs

2016-09-29 18:58

我洗牌的想法是生成一个随机数,然后在cardsToSelect这个List里面在该随机数的位置把元素取出来按顺序放进新建的List——washedList里面。

我想打印一下输出看看有没有成功,就报错Exception in thread "main" java.lang.NullPointerException

该怎么解决?

代码在下面

谢谢

写回答 关注

2回答

  • ziom
    2016-09-29 20:18:43
    已采纳

    cardsToSelect是什么?初始化了吗

    K_Muxs

    已经解决了,原因是random只是声明了,忘记创建了

    2016-09-29 20:36:57

    共 1 条回复 >

  • K_Muxs
    2016-09-29 19:01:09
    public void washCard() {
      int size = cardsToSelect.size();
      List<Card> washedList = new ArrayList<Card>();
      for (int i = 0; i < size; i++) {
       Card temp = new Card();
       do {
        temp = cardsToSelect.get(random.nextInt(size));   
       } while (washedList.contains(temp));
       washedList.add(temp);
      }
      System.out.println("==========洗牌后==========");
      for (int i = 0; i < size; i++) {
       System.out.print(washedList.get(i).type
         + washedList.get(i).num + ",");
      }
     }


Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题