编写一个扑克牌 4 种花色的枚举,让其 toString 方法分别返回♣,♦,♥,♠,并实现一个函数,检查某张牌的花色是否为红色

//继承枚举类实现枚举类的方法   
//继承App  可以省略main方法,直接进行测试
object Suits extends Enumeration with App {
 
  type Suits = Value

  val Spade = Value("♣")
  val Club = Value("♦")
  val Heart = Value("♥")
  val Diamond = Value("♠")

  override def toString(): String = {       //让其 toString 方法分别返回♣,♦,♥,♠
    var s: String = null
    if (this.equals("Spade")) s = "♣"
    else if (this.equals("Club")) s = "♦"
    else if (this.equals("Heart")) s = "♥"
    else s = "♠"
    return s
  }
  
  println(Spade.toString)         //测试toString 方法

  def color(c: Four.Value) = {        //检查某张牌的花色是否为红色
    if (c == Suits .Heart || c == Suits .Club)  "red"             
    else "black"
  }

  println(color(Club))             //测试color方法
}

看一下精炼版的,注意type后面的 变量名要与类名一致

object Suits extends Enumeration{
  type Suits = Value
  val Spade = Value("♠")
  val Club = Value("♣")
  val Heart = Value("♥")
  val Diamond = Value("♦")
  override def toString():String={
    Suits.values.mkString(",")
  }
  def isRed(card: Suits) = card == Heart || card == Diamond
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值