Scala 序列 List的簡單使用

2021-09-24 09:35:35 字數 3090 閱讀 1483

scala> import scala.collection.immutable._

import scala.collection.immutable._

//建立不可變的序列

scala> val lst1=list(1,2,3)

lst1: list[int] = list(1, 2, 3)

//將0插入到lst1前並生成乙個新的集合

scala> val ls2=0::lst1

ls2: list[int] = list(0, 1, 2, 3)

//將0插入到lst1前並生成乙個新的集合

scala> val ls3= lst1.::(0)

ls3: list[int] = list(0, 1, 2, 3)

//將0插入到lst1前並生成乙個新的集合

scala> val ls4=0+:lst1

ls4: list[int] = list(0, 1, 2, 3)

//將0插入到lst1前並生成乙個新的集合

scala> val ls5=lst1.+:(0)

ls5: list[int] = list(0, 1, 2, 3)

//將3插入到lst1後並生成乙個新的集合

scala> val ls6=lst1:+3

ls6: list[int] = list(1, 2, 3, 3)

//新建乙個list集合

scala> val ls7=list(4,5,6)

ls7: list[int] = list(4, 5, 6)

合併集合形成新的集合

scala> val ls8=lst1++ls7

ls8: list[int] = list(1, 2, 3, 4, 5, 6)

將ls7插入到lst11前

scala> val ls9=lst1.:::(ls7)

ls9: list[int] = list(4, 5, 6, 1, 2, 3)

列印輸出

scala> println(ls9)

list(4, 5, 6, 1, 2, 3)

//建立li1集合

scala> val li1=1::(2::(3::(4::nil)))

li1: list[int] = list(1, 2, 3, 4)

//建立li2集合

scala> val li2=1::2::3::4::nil

li2: list[int] = list(1, 2, 3, 4)

//判斷是否為空

scala> li2.isempty

res66: boolean = false

//取第乙個元素

scala> li2.head

res67: int = 1

//取除第乙個元素外的剩餘元素返回的是列表

scala> li2.tail

res68: list[int] = list(2, 3, 4)

//取列表的第二個元素

scala> li2.tail.head

res69: int = 2

//連線操作

scala> list(1,2,3):::list(4,5,6)

res70: list[int] = list(1, 2, 3, 4, 5, 6)

//取除最後乙個元素外的1元素,返回的是列表

scala> li2.init

res71: list[int] = list(1, 2, 3)

//取列表最後的乙個元素

scala> li2.last

res72: int = 4

列表元素倒置

scala> li2.reverse

res74: list[int] = list(4, 3, 2, 1)

判斷是否相等

scala> li2.reverse.reverse==li2

res75: boolean = true

//去除第乙個以外剩餘的元素進行反轉

scala> li2.tail.reverse

res77: list[int] = list(4, 3, 2)

scala> li2.reverse.init

res78: list[int] = list(4, 3, 2)

//刪除元素

scala> li2 drop 2

res79: list[int] = list(3, 4)

//獲取前乙個元素

scala> li2 take 1

res80: list[int] = list(1)

//獲取前3個元素

scala> li2.take(3)

res81: list[int] = list(1, 2, 3)

//列表分割

scala> li2.splitat(2)

res82: (list[int], list[int]) = (list(1, 2),list(3, 4))

scala> (li2.take(2),li2.drop(2))

res83: (list[int], list[int]) = (list(1, 2),list(3, 4))

scala> val la1=list(1,2,3,4)

la1: list[int] = list(1, 2, 3, 4)

scala> val chars=list(『1』,『2』,『3』,『4』)

chars: list[char] = list(1, 2, 3, 4)

//list的元陣列

scala> la1 zip chars

res85: list[(int, char)] = list((1,1), (2,2), (3,3), (4,4))

list.tostrin方法

scala> la1.tostring

res86: string = list(1, 2, 3, 4)

列印輸出

scala> la1.mkstring

res88: string = 1234

scala> la1.toarray

res89: array[int] = array(1, 2, 3, 4)

list轉map Java Stream的使用

一 list map 1 有如下表對應表結構,實現 2 先進行一些簡單的操作 定義類private integer rank private string description public movie integer rank,string description public integer ...

scala中List的常見操作

參考自 下面是list的常用方法,當然了這不是所有的.但都是最常用的.具體看下面的demo.具體可以看 裡面的注釋 新建空listbuffer並新增元素 返回最後乙個元素 println list.last 在指定的位置 end 開始查詢元素最後出現的位置 println list.lastinde...

scala中extends和with的使用

在scala中有的時候用extends有的時候用with,到底該用什麼呢?請看下面用例 trait mytrait1 trait mytrait2 class myclass1 extends mytrait1 class myclass2 class myclass3 extends mytrai...