scala學習(一)

來源:互聯網
上載者:User

標籤: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)

很方便哦~~





相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.