scala 集合型別

2022-05-06 12:21:13 字數 1760 閱讀 4304

iterable 是序列(seq), 集(set) 對映(map)的特質

序列式有序的集合如陣列和列表

集合可以通過== 方法確定對每個物件最多包含乙個

對映包含了鍵值對映關係的集合

列表快取:

使用listbuffer代替list 另乙個理由是為了避免棧溢位的風險

陣列快取: arraybuffer需要先從可變集合包引用 scala.collection.mutable.arraybuffer

val buf = new arraybuffer[int]()

佇列queue:先進先出

class

bankaccount

def widthdraw(account: int): boolean =

}}

abstract

class

simulation =>unit

case

class

workitem(time: int, action: action)

private var currtime = 0def currenttime: int =currtime

private var agenda: list[workitem] =list()

private

def insert(arg: list[workitem],

item: workitem) : list[workitem] =

def afterdelay(delay: int)(block: => unit) = => block)

agenda = insert(agenda, item )*/}

private

def next()

} def run()

//while (!agenda.isempty) next()

}}

class

time

def hour: int =h

def hour_ = (x: int)

def minute: int =m

def minute_ = (x: int)

}

class

scala

object scala

def isort(sx: list[int]): list[int] =

def isinsert(ss: int,sx: list[int]) : list[int] =

//以下使用模式匹配

def isort2(sx: list[int]) : list[int] =sx match

def insert2(x: int, xs: list[int]): list[int] =xs match

sx match

} //佇列

val queue1 = new

mutable.queue[int]

val va1 = queue1.enqueue(1) //

不可變佇列新增元素用enqueue

val queue = new

mutable.queue[string]

queue += "a"queue ++= list("b", "c")

//有序的 val ts = mutable.treeset(2,4,6,7,0,8,3)

def mapmaker: map[string, string] =

}}

scala集合型別,函式

scala使用初步介紹 函式 def 建立容器 array 1,2,3 list 1,2,3 array 1,2,3 tolist map k1 1 k2 2 scala.tuple3 1,2,3 1,2,3 取出元素 arr 0 arr 1 list 0 list 1 map k1 tup.1,t...

Scala基礎學習 scala集合 005

定長陣列 println test val a new array string 5 a.length a 0 hello 賦值 a 1 取值 b 1 flink 可以修改值,並沒有修改指標 val c array 1,2,3,4,5,6 c.mkstring 轉換為字串 c.mkstring c....

scala學習筆記 集合

變長陣列 陣列緩衝 scala中對於那種長度會變的陣列的資料結構為arraybuffer。import scala.collection.mutable.arraybuffer 乙個空的陣列緩衝,準備存放整數 val array buffer arraybuffer int 或者 new array...