scala 中缀表达式和中置操作符

本文介绍了Scala编程中的中缀表达式(: :)及其使用示例,通过match和: :进行模式匹配。同时讨论了中置操作符的应用,虽然它可以简化代码,但可能降低代码可读性,需要谨慎使用。举例说明了中置操作符如'+ '实际上执行的是乘法操作,避免引起误解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、中缀表达式(::)
中缀表达式的关键字就是::,下方代码通过match+::进行模式匹配,只有当第一个case条件中的size-1个(即one,two,three,four全部匹配成功)匹配成功,才会执行第一个case语句,并执行println代码,输出第一、第四以及rest处的数据,不然走第二条case语句,输出nihao

List(1,2,3,4,5) match {
  case one :: two :: three :: four :: rest => println(one,four,rest)
  case _=>println("nihao")
}

结果:
(1,4,List(5))

二、中置操作符

def +(mc:MyClass)={
  println(mc.num*num)
}
val mc1 = new MyClass(10)
val mc2 = new MyClass(20)
//mc1.+(mc2)
mc1 + mc2//中置操作符(去点和括号)类似于+重定义

合理运用中置操作符可以简化代码,但是会降低代码的可读性,给其他人的阅读带来难度,慎用!(比如此处的‘’+‘’是一个函数名称,执行的是乘法操作,直接简写成mc1+mc2很可能理解成加法操作)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值