当前位置: 首页 > news >正文

全部免费网站软件最好用的免费建站平台

全部免费网站软件,最好用的免费建站平台,wordpress泽七,上海展厅一、匹配常量 在scala中,模式匹配可以匹配所有的字面量,包括字符串,字符,数字,布尔值等等 def describeConst(x:Any):String x match {case "str" > "匹配字符串"case > "匹配字符&…

一、匹配常量

在scala中,模式匹配可以匹配所有的字面量,包括字符串,字符,数字,布尔值等等

 def describeConst(x:Any):String = x match {case "str" => "匹配字符串"case '+' => "匹配字符"case 1 => "匹配整数"case true => "匹配布尔值"case a => s"匹配$a"}println(describeConst("str"))println(describeConst('+'))println(describeConst(1))println(describeConst(true))println(describeConst('-'))

在这里插入图片描述

二、匹配类型

   def describeType(x:Any):String = x match {case x:String => "匹配字符串"case x:Char => "匹配字符"case x:Int => "匹配整数"case x:Boolean => "匹配布尔值"case list:List[String] => "List" + listcase array:Array[Int] => "Array" + array.mkString("\t")case a => s"匹配$a"}println(describeType("str"))println(describeType('+'))println(describeType(1))println(describeType(true))println(describeType(List("a","b","c")))// 泛型擦除println(describeType(List(1,2,3,4,5)))println(describeType(Array(1,2,3,4,5)))// array不存在泛型擦除println(describeType(Array("1","2")))

在这里插入图片描述

三、匹配集合类型

代码:

for (arr <- List(Array(0),Array(1,0),Array(0,1,0),Array(1,1,0),Array(2,3,7,15),Array("hello","a",30))){val result = arr match{case Array(0) => "0"case Array(1,0) => "Array(1,0)"case Array(x,y) => "Array: " + x + ", " + ycase Array(0,_*) => "以0开头的数组"case Array(x,1,z) => "中间为1的三元素数组"case _ => "Something else"}println(result)}

结果:

在这里插入图片描述

  for(list <- List(List(0),List(1,0),List(0,0,0),List(1,1,0),List(88),List("hello"))){val result = list match {case List(0) => "0"case List(x,y) => "List(x,y): " + x + ", " + ycase List(0,_*) => "List(0,..."case List(a) => "List(a):" + acase _ => "something else"}println(result)}

结果:

在这里插入图片描述

代码:

  val list1 = List(1,2,5,7,24)val list = List(24)list match {case first :: second :: rest => println(s"first:$first, second:$second , rest: $rest")case _ => println("something else")}list1 match {case first :: second :: rest => println(s"first:$first, second:$second , rest: $rest")case _ => println("something else")}

结果:

在这里插入图片描述

  for (tuple <- List((0,1),(0,0),(0,1,0),(0,1,1),(1,23,56),("hello",true,0.5))){val result = tuple match {case (a,b) => ""  + a + ", " + bcase (0,_) => "(0, _)"case (a,1,_) => "(a,1,_) " +acase _ => "something else"}println(result)}

结果:

在这里插入图片描述

在变量声明时匹配:

    val (x,y) = (10,"hello")println(s"x:$x,y:$y")val List(first,second,_*) = List(23,15,9,78)println(s"first:$first,second:$second")val fir :: sec :: rest = List(23,15,9,78)println(s"first:$fir,second:$sec,rest:$rest")

在这里插入图片描述

for推导式中进行模式匹配

将List的元素直接定义为元组,对变量赋值

  val list = List(("a",12),("b",35),("c",27))for ((word,count) <- list){println(word + " " + count)}

在这里插入图片描述

可以不考虑某个位置的变量,只遍历key或者value

    val list = List(("a",12),("b",35),("c",27))for ((word,_) <- list)println(word)

在这里插入图片描述

可以指定某个位置的值必须是多少

  val list = List(("a",12),("b",35),("c",27),("a",99))for(("a",count) <- list){println(count)}

在这里插入图片描述

四、匹配对象及样例类


package scala
object User {def main(args: Array[String]): Unit = {val student = Student("alice",19)val result = student match {case Student("alice",19) => "Alice, 19"case _ => "Else"}println(result)}case class Student(name:String,age:Int)}

在这里插入图片描述

http://www.dinnco.com/news/86703.html

相关文章:

  • 企业网站营销常用的方法靠谱的代运营公司有哪些
  • 做水印的网站免费有效的推广平台
  • 网站开发质量控制计划书网络推广服务
  • 鸿顺里网站建设网络营销推广方案怎么写
  • 淅川微网站建设制作公司网站的步骤
  • angular2是做网站的还是手机的如何免费创建自己的平台
  • 中山seoseo综合优化公司
  • 网站建设的栏目规划汕头最好的seo外包
  • wordpress 会员管理插件重庆seo整站优化效果
  • 企业免费建站软件泰安百度推广电话
  • 公司网站建设合同竞价外包
  • asp.net做的网站模板网络服务
  • 传统网站布局百度快速排名提升
  • 地方生活门户网站名称淘宝流量助手平台
  • 在线制作微信头像seo 优化顾问
  • 那个外贸网站做的最好合肥网络优化推广公司
  • 网站建设常识学校教育培训机构
  • 网站预约功能怎么做关键词有哪些?
  • 桥东区网站建设优化官网咨询
  • 中央农村工作会议12月19日至20日刷神马网站优化排名
  • 免费网站空间怎么品牌推广公司
  • wordpress抢救360站长工具seo
  • 商务厅网站建设意见互联网营销师培训教程
  • 深圳百度总部seo公司重庆
  • 免费手机网站建设友链购买网
  • 未来最紧缺的十大专业百度优化师
  • 免费项目进度管理软件网站的seo
  • 做公司网站用什么系统小区推广最有效的方式
  • 做红k线网站宁波网站推广优化公司电话
  • 可以做海报的网站免费访问国外网站的app