scala學習筆記:各種奇怪的寫法
- Unit函式的定義:
def foo()={println("hi")}
等號可以省略:
def foo(){println("hi")}
- update方法:
x(y) = z
相當於:
x.update(y, z)
- 單引數方法的呼叫:
xObject yMethod zParameter
相當於:
xObject.yMethod(zParameter)
- case類的中置表示法
h::t
等價於
::(h,t)
可以試著執行一下:
scala> `::`(0,List(1))
res11: scala.collection.immutable.::[Int] = List(0, 1)
同理,
x~y~z
等價於
~(~(x,y),z)
一些匿名類、函式引數的寫法:
匿名函式
val square=(x:Double)=>Math.pow(x,2)
可以寫成:
val square=Math.pow(_:Double,2)
匿名類
class DoubleTrans {def foo=(_:Int)*2}
val p1 = new DoubleTrans()
p1 foo 2
可以簡寫成:
val p2 = new {def foo=(_:Int)*2}
p2.foo(100)
- 匿名子類
scala> val p3=new DoubleTrans(){override def foo=(_:Int)*3}
p3: DoubleTrans = $anon$1@56636a77
scala> p3 foo 4
res9: Int = 12
scala> p3.isInstanceOf[DoubleTrans]
res10: Boolean = true
相關文章
- Scala學習筆記筆記
- Scala學習筆記(2)-基礎語法筆記
- 學習筆記 ProgressBar三種style 水平兩種寫法筆記
- ES6語法學習筆記之陣列的各種迴圈方法筆記陣列
- JS學習筆記:JS 的function( window, undefined ) {}(window)寫法JS筆記FunctionUndefined
- Scala基本語法學習
- 小紅書爆款筆記如何寫,掌握3種型別的筆記寫法筆記型別
- 2020-09-29【學習筆記】scala語言(三十三) scala中的抽象方法筆記抽象
- 2個奇怪的React寫法React
- Scala學習記錄01
- 2020-09-25【學習筆記】scala語言(二十九) scala中的建立物件筆記物件
- Metasploit滲透測試學習筆記——7、使用Metasploit生成各種payload筆記
- JavaScript學習筆記2: js書寫語法及變數JavaScript筆記JS變數
- Scala 的學習
- css居中辦法學習筆記CSS筆記
- Python學習筆記(語法篇)Python筆記
- PHP學習筆記1.1——date()函式的多種用法,取出各種不同格式的時間,非常全面...PHP筆記函式
- Scala筆記(一)筆記
- numpy的學習筆記\pandas學習筆記筆記
- wasm 學習筆記,寫個求和demoASM筆記
- swift學習筆記《2》-swift語法Swift筆記
- 《PHP學習筆記——PHP基本語法》PHP筆記
- Docker 與 K8S學習筆記(二十五)—— Pod的各種排程策略(上)DockerK8S筆記
- C++學習筆記----讀寫檔案C++筆記
- 分享一個奇怪得程式碼寫法
- Scala學習總結(from scala for the Impatient)
- Linux小白菜嘗試寫學習筆記日記Linux筆記
- Ansibleyaml的語法、playbook檔案例子(學習筆記十七)YAML筆記
- MySQL增刪改查學習筆記(手寫)MySql筆記
- Promise學習筆記(知識點 + 手寫Promise)Promise筆記
- Python 3 學習筆記之——基礎語法Python筆記
- 積分之自適應辛普森法 [學習筆記]筆記
- ES6語法學習筆記之promise筆記Promise
- Go 學習筆記 - Go 基礎語法(2)Go筆記
- Go學習筆記 - Go 基礎語法(1)Go筆記
- 棧的學習筆記筆記
- Cypress 的學習筆記筆記
- Vue3 JSX 寫法筆記VueJS筆記
- 學習筆記筆記