Java 计算总枚举值

Java 计算总枚举值,java,arraylist,enums,playing-cards,totals,Java,Arraylist,Enums,Playing Cards,Totals,我正在构建一个纸牌游戏。我有一个名为Card的类,它包含等级和等级的枚举类 等级包括两(2)、三(3)、四(4)、五(5)、六(6)等 我还有一个名为Hand的类,它包含一个Card类型的arraylist。我需要能够在手上存储卡的总价值。例如,包含3个梅花、5个钻石和心形王牌的手牌需要等于19(3+5+11) 如何用Java编写此文档?建议: 为枚举指定一个public int getValue()方法,该方法返回int value属性(或您为该属性指定的任何名称)所持有的值 在Hand类的

我正在构建一个纸牌游戏。我有一个名为Card的类,它包含等级和等级的枚举类

等级包括两(2)、三(3)、四(4)、五(5)、六(6)等

我还有一个名为Hand的类,它包含一个Card类型的arraylist。我需要能够在手上存储卡的总价值。例如,包含3个梅花、5个钻石和心形王牌的手牌需要等于19(3+5+11)

如何用Java编写此文档?

建议:

  • 为枚举指定一个
    public int getValue()
    方法,该方法返回
    int value
    属性(或您为该属性指定的任何名称)所持有的值
  • 在Hand类的
    getValueSum()
    (或任何您调用此方法的方法)中,通过调用此方法迭代Hand的
    ArrayList
    ,对值求和
建议:

  • 为枚举指定一个
    public int getValue()
    方法,该方法返回
    int value
    属性(或您为该属性指定的任何名称)所持有的值
  • 在Hand类的
    getValueSum()
    (或任何您调用此方法的方法)中,通过调用此方法迭代Hand的
    ArrayList
    ,对值求和
    • 假设:

      enum Card {
              TWO(2), THREE(3), FOUR(4), FIVE(5), SIX(6);
      
              private final int value;
      
              private Card(int value) {
                  this.value = value;
              }
      
              public int getValue() {
                  return value;
              }
      }
      
      在java 8中:

      List<Card> cards = ....;
      cards.stream().mapToInt(Card::getValue).sum();
      
      列出卡片=。。。。;
      cards.stream().mapToInt(Card::getValue.sum();
      
      假设:

      enum Card {
              TWO(2), THREE(3), FOUR(4), FIVE(5), SIX(6);
      
              private final int value;
      
              private Card(int value) {
                  this.value = value;
              }
      
              public int getValue() {
                  return value;
              }
      }
      
      在java 8中:

      List<Card> cards = ....;
      cards.stream().mapToInt(Card::getValue).sum();
      
      列出卡片=。。。。;
      cards.stream().mapToInt(Card::getValue.sum();