view bound:必須傳入乙個隱式轉換函式
class [t
content bound:必須傳入乙個隱式值
class [t : ordering]
!非同步傳送訊息
!? 同步傳送訊息,等待反饋資訊
!!非同步傳送完成之後,返回乙個future引用
scala列表操作符::把心元素整合到現有列表的最前端
scala裡面map 有2個特質:scala.collection.mutable 可變map
scala.collection.immutable 不可變map
scala 中如果一行開頭用""" 表示開始 , 結尾用""" 表示結束
操作符和操作方法:
1+2 與(1).+(2) 表達的效果是一樣
val s = "hellon word".tolowercase 輸出結果:hello word
for yield
暫位符語法: _ > 0 堅持值是否大於 0
val f = (_: int) +(_ : int)
val b = sum(1, _: int, 3) b(2) 輸出結果 6
閉包減少**
private def filehere = new file(".").listfiles()優化後的結果:def fileending(query: string) =
def filecontaining(query: string)
def filesregex(query: string): unit =
def filematching(query: string, matcher: (string, string) =>boolean)
乙個方法之只要沒有實現(即沒有等號或者方法體) 它就是抽象的
具體(concrete)
多型動態繫結:
樣本類和模式匹配:case class name 方便呼叫
abstract匹配固定長度序列模式class
caseclass
def simplifytop(cass: caseclass) :caseclass =cass match
//的乙個引數匹配「-」,第二個引數匹配e的值
//通配匹配
expr match
expr match
}
匹配任意長度序列模式
帶有元組模式的匹配
型別模式匹配:
修改前:
class新增beanproperty 後person(var firstname: string, var secondname: string, var age: int)
如果在**中加入@scala.reflect.beanproperty 就是相當於設定了get/set 方法
class讀取檔案資訊person(fn:string, ln:string, a:int)
def findfilename(): unit =system.out.print("file"+files)列表:參見list列表}
scala學習筆記 基礎
scalaschool scala def three 1 2 three int scala three res2 int 3 scala three res3 int 3scala x int x 1 res2 int int scala res2 1 res3 int 2你可以傳遞匿名函式,或...
Scala學習筆記1 Scala基礎
特點 先編譯 scalac scala 再執行 scala 值與變數 常用型別 byte,char,short,int,long,float,double,boolean 方法定義 迴圈 lazy val 用時才會載入 lazy val a 2 預設引數 def sayname name strin...
Spark學習筆記 Scala基礎(一)
載入外部資料集 val rddtext sc.textfile hellospark.txt val 變數值不可修改,一旦分配不能重新指向別的值 var 分配後,可以指向型別相同的值 val lines sc.textfile hellospark.txt lines sc.textfile hel...