標籤:scala
開始學習scala,有一種學習java的感覺。
首先,從網站下載scala的包,下載後要安裝,安裝後把安裝目錄的bin放到環境變數psth裡
cmd裡,輸入scala,如果出現,那麼恭喜咯,安裝成功咯~~
1:變數
首先我們看下定義變數方法
var 可以定義變數,可以改變值
val 定義的變數不可以改變值,類似於java的final變數;
2:函數
定義了一個函數
def max(x:Int,y:Int):Int ={
if(x>y)x
else y
}
def:表面定義函數
max :函數名稱
(x:Int,y:Int)函數的兩個參數,分別是Int類型。注意Int不能小寫;
:Int 傳回型別是Int
大括弧裡是函數主體~
調用時可以直接調用
max(9,10)
如果是沒有參數也不用返回的函數可以如下寫法:
def greet() = println("hello")
退出編輯器的方法 :quit
3:scala指令碼
可以再文字檔中寫scala指令碼
如下:args.foreach(arg => print(arg))
命名為:test.scala
然後cmd中就可以使用命令 scals test.scala ni hao me
ni hao me 就作為參數傳入指令碼中,進行了列印;
指令碼解析:
指令碼中調用了foreach方法,arg作為參數傳入 => 後面的是函數體 進行列印;
for迴圈:
scala的for迴圈如下:
for(arg <- args) println(arg)
4:數組(Araay)
scala的數組可以如下:
var gree = Array("ni","hao","a")
for(i<- 0 to 2) println(gree(i))
這樣就完成了一個數組的迴圈列印;
5:列表(list)
val onetwolist = List(1,2,3) //這就是建立了一個list
list的方法:
:::表示可以吧兩個list疊加到一起
::是可以吧元素加到list前面
但是list沒有添加一個元素的方法,空list簡稱:Nil。但是可以通過對空list和元素的疊加,組成一個新的list
list的方法匯總:
list() 或者 Nil ---空list
val thrill = "i"::"am"::"niuxiao"::Nil ----建立一個list
List("1","2"):::List("3","4") ----疊加兩個list
thrill(2) ----返回thrill的下標為2的元素
thrill.count(s => s.length==4)---返回thrill列表中長度為4的string元素個數
thrill.drop(2)---刪除
thrill.dropRight(2)---從右邊刪除
thrill.exists(s => s=="am")---返回是否有為am的元素
thrill.filter(s => s.length ==4)---返回以長度為4的元素組成的新列表
thrill.forall(s => s.endsWith("1"))---返回是否列表所有元素都是以1結尾
thrill.foreach(print)---迴圈列印元素
thrill.head---返回列表第一個元素
thrill.init---返回除最後一個以外其他元素組成的列表
thrill.isempty---返回thrill列表是否為空白
thrill.last
thrill.length
thrill.map(s => s+"4")---返回列表裡每個string元素都加“4”構成的列表
thrill.mkString(",")---返回列表裡元素組成的字串,由,串連
thrill.remove(s => s.length==4)
thrill.reverse---返回列表元素逆序排列的新列表
thrill.sort((s,t) => s.charAt(0).toLowerCase < t.charAt(0).toLowerCase) -----返回列表元素第一個字元字母小寫後排序組成的新列表
thrill.tail ---返回除第一個元素外組成的新列表
6:元組(tuple)
元組和list的區別:
list都是同一類型的元素,元組可以是不同類型的元素
例如:val pair = (99,"nihao")
println(pair._1)
println(pair._2)
很方便哦~~