Scala的隐式转换(1)

复制代码
package hfd
//需求:
//完成一个功能,让所有的字符串都能调用isPhone方法,来校验自己是不是一个手机号
object Test37_1 {
  class StrongString(val str: String) {

    //开始你的代码
    def isPhone(): Boolean = {
      val reg = "1[3-9]\\d{9}".r
      reg.matches(str)
    }
  }
  //定义一个特殊的转换函数,把str===>StrongString的对象
  def tranform(str: String): StrongString = {
    new StrongString(str)

  }

  def main(args: Array[String]): Unit = {
    val str = "12345678"
    //  println(isPhone(str))
    // println(isPhone("abc"))
    println(tranform("abc").isPhone())
    // println((new StrongString(str)).isPhone())
    //    str.isPhone()//==>true
    //    "136a".isPhone()//==>false
  }
}
相关推荐
虚心的百褶裙14 分钟前
JavaScript性能优化
开发语言·javascript·性能优化
凯瑟琳.奥古斯特20 分钟前
二分查找解力扣1011最优运载能力
开发语言·c++·算法·leetcode·职场和发展
Tim_1038 分钟前
【C++】014、左值与右值的区别
开发语言·c++
天空'之城1 小时前
Linux 系统编程 14:Reactor 反应堆模式
linux·开发语言·网络编程·reactor 反应堆模式
Zhou1411361 小时前
Java常见面试题7
java·开发语言
^yi1 小时前
【C++】类和对象(全)
开发语言·c++
Dovis(誓平步青云)1 小时前
《C/C+++ Boost 轻量级搜索引擎实战:架构流程、技术栈与工程落地指南——HTML文件的清洗(上篇)》
开发语言·数据库·c++·搜索引擎·开源
布朗克1681 小时前
Go 入门到精通-13-指针与内存
开发语言·c++·golang·指针与内存
码兄科技9 小时前
Java AI智能体开发实战:从零构建智能对话系统指南
java·开发语言·人工智能