第四章 陣列操作

2021-08-20 03:16:23 字數 2630 閱讀 1451

1 scala陣列操作

1.1 定義定長陣列

scala> val arr1=new array[int](5)

arr1: array[int] = array(0, 0, 0, 0, 0)

列印陣列後,輸出位址

scala> println(arr1)

[i@199e4c2b

呼叫陣列物件的tobuffer方法

scala> println(arr1.tobuffer)

arraybuffer(0, 0, 0, 0, 0)

初始化定長陣列

scala> val arr2=array(8,6,"abc")

arr2: array[any] = array(8, 6, abc)

輸出指定索引元素

scala> println(arr2(2))

abc1.2 定義變長陣列

首先,必須匯入mutable(可變的),arraybuffer

scala> import scala.collection.mutable.arraybuffer

import scala.collection.mutable.arraybuffer

定義,可變陣列

scala> val arr3=arraybuffer[int]()

arr3: scala.collection.mutable.arraybuffer[int] = arraybuffer()

為可變陣列新增元素

scala> arr3+=1

res5: arr3.type = arraybuffer(1)

為可變陣列新增乙個元組物件,注意使用++

scala> arr3+=(8,10,66)

res6: arr3.type = arraybuffer(1, 8, 10, 66)

為可變陣列新增乙個定長陣列

scala> arr3++=array(6,9)

res7: arr3.type = arraybuffer(1, 8, 10, 66, 6, 9)

為可變陣列新增乙個可變陣列

scala> arr3++=arraybuffer(55,33)

res8: arr3.type = arraybuffer(1, 8, 10, 66, 6, 9, 55, 33)

在第0個索引插入元素

scala> arr3.insert(0,11,22,33)

scala> arr3

res10: scala.collection.mutable.arraybuffer[int] = arraybuffer(11, 22, 33, 1, 8, 10, 66, 6, 9, 55, 33)

從第3個索引位置開始刪除3個元素

scala> arr3.remove(3,3)

scala> arr3

res12: scala.collection.mutable.arraybuffer[int] = arraybuffer(11, 22, 33, 66, 6, 9, 55, 33)

遍歷for(i->arr3)print(i)

for(i->0 until arr3.length)print(arr3(i))

for((i->(0 until arr3.length).reverse)print(arr3(i))

使用yield生成新陣列

scala> val arr=array(1,3,5)

arr: array[int] = array(1, 3, 5)

scala> var arr2=for(i<-arr) yield i*3

arr2: array[int] = array(3, 9, 15)

scala> arr

res13: array[int] = array(1, 3, 5)

scala> arr2

res14: array[int] = array(3, 9, 15)

scala> arr.sum

res15: int = 9

scala> arr.max

res16: int = 5

scala> arr.min

res17: int = 1

scala> arr.length

res20: int = 3

scala> arr3.sorted

res21: scala.collection.mutable.arraybuffer[int] = arraybuffer(6, 9, 11, 22, 33, 33, 55, 66)

scala> arr3

res22: scala.collection.mutable.arraybuffer[int] = arraybuffer(11, 22, 33, 66, 6, 9, 55, 33)

scala> val arr4=arr3.sorted

arr4: scala.collection.mutable.arraybuffer[int] = arraybuffer(6, 9, 11, 22, 33, 33, 55, 66)

scala> arr4

res23: scala.collection.mutable.arraybuffer[int] = arraybuffer(6, 9, 11, 22, 33, 33, 55, 66)

第四章 陣列

一維陣列的定義 當陣列中每個元素只帶有乙個下標時,我們稱這樣的陣列為一維陣列。陣列的定義格式如下 型別識別符號 陣列名 常量表示式 說明 陣列名的命名規則與變數名的命名規則一致。常量表示式表示陣列元素的個數。可以是常量和符號常量,但不能是變數。例如 int a 10 陣列a定義是合法的 int b ...

C 第四章 陣列

二維陣列 陣列是一組相同元素的集合.陣列的建立方式 type t arr name const n type t 是指數組的元素型別 const 是乙個 常量表示式,用來指定陣列的大小 陣列建立的例項 1 int arr1 10 2 int count 10 int arr2 count 3 cha...

第四章操作列表

eg mag alice advid axeas for ms in mag print ms 這行 讓python從列表mag中取出乙個名字,並將其儲存在變數ms中。eg mag alice advid axeas for ms in mag print ms.title that was a g...