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

dedecms网站管理系统省厅网站建设招标

dedecms网站管理系统,省厅网站建设招标,广州网站建设推广服务,做网站还是app一、匹配常量 在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.yayakq.cn/news/256687/

相关文章:

  • 网站做301需要备案吗网站外贸推广
  • 网站模板源码下载黄金网站软件app大全下载
  • python django 做 网站如何选择电商网站建设
  • 电子商城网站建设的实训内容郴州网络推广教程
  • 自己做的网站可以卖东莞网站设计开发技能大赛
  • 免费北京企业名录台州关键词优化平台
  • 网站做锚点网站建设方案实例
  • 旅游网站源代码模板建设摩托车倒闭了吗
  • ppt模板网站源码哪些产品可以做单页网站
  • 网站建设工厂页面设计文档
  • 网站开发课程技术培训游戏推广好做吗
  • 建设医疗网站wordpress海外支付
  • 网站上的漂浮怎么做自学网站建设买什么书
  • 网站app软件大全免费商务网站建设考试
  • 网站专题页做多大尺寸成都市招投标信息公开网
  • 现在做网站用什么工具网站建设时间影响因素
  • 如何提升网站速度网络规划设计师岗位职责
  • 有什么网站是做中式酒店大堂的新手学做网站推荐软件
  • 闵行区实验小学东莞网站建设分享seo
  • openshift做网站营销培训班
  • 珠海中企网站建设公司seminar是什么意思
  • 潍坊网站建设(首选聚搜网络)墨刀制作网页教程
  • 怎么做查询网站吗网站的推广代码是什么
  • 织梦网站建设网页指数分布
  • 织梦门户网站做大后网络品牌推广计划
  • 那些因素会影响网站的排名位置四川省建设招标网站
  • 网站开发岗位就业分析链接缩短在线生成器
  • 网站策划专员招聘无人区在线观看高清1080
  • 电子商务企业网站建设实训报告wordpress 回到顶部 插件
  • 忻府网站建设个人主页模板下载