日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

scala学习笔记-Array、ArrayBuffer以及遍历数组(7)

發布時間:2024/1/17 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 scala学习笔记-Array、ArrayBuffer以及遍历数组(7) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Array

在Scala中,Array代表的含義與Java中類似,也是長度不可改變的數組。此外,由于Scala與Java都是運行在JVM中,雙方可以互相調用,因此Scala數組的底層實際上是Java數組。例如字符串數組在底層就是Java的String[],整數數組在底層就是Java的Int[]。

1 // 數組初始化后,長度就固定下來了,而且元素全部根據其類型初始化2 val a = new Array[Int](10)3 a(0)4 a(0) = 15 val a = new Array[String](10)6 7 // 可以直接使用Array()創建數組,元素類型自動推斷8 val a = Array("hello", "world")9 a(0) = "hi" 10 val a = Array("leo", 30)

ArrayBuffer

在Scala中,如果需要類似于Java中的ArrayList這種長度可變的集合類,則可以使用ArrayBuffer。

1 // 如果不想每次都使用全限定名,則可以預先導入ArrayBuffer類2 import scala.collection.mutable.ArrayBuffer3 // 使用ArrayBuffer()的方式可以創建一個空的ArrayBuffer4 val b = ArrayBuffer[Int]()5 // 使用+=操作符,可以添加一個元素,或者多個元素6 // 這個語法必須要謹記在心!因為spark源碼里大量使用了這種集合操作語法!7 b += 18 b += (2, 3, 4, 5)9 // 使用++=操作符,可以添加其他集合中的所有元素 10 b ++= Array(6, 7, 8, 9, 10) 11 // 使用trimEnd()函數,可以從尾部截斷指定個數的元素 12 b.trimEnd(5)

ArrayBuffer

// 使用insert()函數可以在指定位置插入元素 // 但是這種操作效率很低,因為需要移動指定位置后的所有元素 b.insert(5, 6) b.insert(6, 7, 8, 9, 10) // 使用remove()函數可以移除指定位置的元素 b.remove(1) b.remove(1, 3) // Array與ArrayBuffer可以互相進行轉換 b.toArray a.toBuffer

遍歷Array和ArrayBuffer

1 // 使用for循環和until遍歷Array / ArrayBuffer2 // 使until是RichInt提供的函數3 for (i <- 0 until b.length)4 println(b(i))5 // 跳躍遍歷Array / ArrayBuffer6 for(i <- 0 until (b.length, 2))7 println(b(i))8 // 從尾部遍歷Array / ArrayBuffer9 for(i <- (0 until b.length).reverse) 10 println(b(i)) 11 // 使用“增強for循環”遍歷Array / ArrayBuffer 12 for (e <- b) 13 println(e)

數組常見操作

1 // 數組元素求和2 val a = Array(1, 2, 3, 4, 5)3 val sum = a.sum4 // 獲取數組最大值5 val max = a.max6 // 對數組進行排序7 scala.util.Sorting.quickSort(a)8 // 獲取數組中所有元素內容9 a.mkString 10 a.mkString(", ") 11 a.mkString("<", ",", ">") 12 // toString函數 13 a.toString 14 b.toString

總結

以上是生活随笔為你收集整理的scala学习笔记-Array、ArrayBuffer以及遍历数组(7)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。