scala的隐式对象和隐式类1.2

19 阅读1分钟

用隐式类生成一个正确的手机号

目标: 让任意一个字符串具备一个功能:判断是否是一个合法的手机号

string类是系统提供的,并没有isPhon这个方法 现在就要去在不修改String类的情况下,增加这个方法

package imp

/*

    目标:让任意一个字符串具备一个功能:判断是否是一个合法的手机号
    string类是系统提供的,并没有isPhon这个方法
    现在就要去在不修改String类的情况下,增加这个方法

 * */
object imp05 {
  implicit class StrongString(s:String) {
    def isPhon : Boolean={
      val reg = "^1[35678]\d{9}$".r
      reg.matches(s)
    }
  }
  def main(args: Array[String]): Unit = {
    val str = new String("13617295643")
    //val  str = "13617295643"
    //str.isPhone()//判断自己是否是一个合法的手机号,返回值是boolen  true,false
    println(str.isPhon)
    println("134567891a".isPhon)
    println("130567891a".isPhon)
  }
}