17 scalaコレクション使用
4302 ワード
1配列の使用
1.1定長配列の使用
1.2変数配列の使用
2メタグループの使用
2.1タプルの使用
注:scalaのメタグループは最大22要素しかありません
2.2メタグループのクエリーと遍歴
3リストの使用
デフォルトでは、Listは
3.1可変リストの使用
3.2可変リストのクエリー
3.3可変リストの使用
3.4可変リストの追加削除
4キューの使用
4.1キューの作成
4.2キュー要素の増加
4.3キュー要素の出入り
4.4キュー要素の取得
5 mapの使用
5.1 mapの作成
5.2 mapの新しい要素の追加
5.3 map値の取得方法
5.4 map値の遍歴のいくつかの方式
6 setの使用
6.1 setの作成
6.2可変setセットの追加と削除要素
1.1定長配列の使用
val arr01 = new Array[Int](4) // , Int, 4
arr01(3)=10 // arr01 3
1.2変数配列の使用
import scala.collection.mutable.ArrayBuffer
val arr02 = ArrayBuffer[Any](3, 2, 5) // Any
#
arr02(0) // arr01
arr02.appned(10) //
arr02(0)=5 // 5
arr02.remove(1) // 1
#
for (i
#
arr03 = arr01.toBuffer //
arr04 = arr02.toArray //
2メタグループの使用
2.1タプルの使用
注:scalaのメタグループは最大22要素しかありません
val tuple1 = (1, 2, 3, "hello", 4) // tuple
2.2メタグループのクエリーと遍歴
#
tuple1._1 //
tuple1.productElement(0) // productElement(index) ,
// ,
for (item
3リストの使用
デフォルトでは、Listは
scala.collection.immutable.List
です.すなわち、可変ではありません.可変タイプを使用する場合は、scala.collection.mutable.List
を使用します.3.1可変リストの使用
val list01 = Nil //
list02 = List(1, 2, 3, "Hello") #
val list03= (1 :: 2 :: 2 :: Nil) # , , `::Nil`
3.2可変リストのクエリー
list02(1) // list01
3.3可変リストの使用
import scala.collection.mutable.ListBuffer
val lst0 = ListBuffer[Int](1, 2, 3) // Int
val lst1 = ListBuffer[Int](4, 5)
3.4可変リストの追加削除
lst0(0) // 0
lst(0) = 6 // 0 6
lst.remove(2) // 1
#
lst0.append(2) //
lst0 :+ 2 // , :
2+: lst0 //
lst0 ++= lst1 // lst0 lst1
4キューの使用
4.1キューの作成
import scala.collection.mutable
val q1 = new mutable.Queue[Int] //
4.2キュー要素の増加
# ,
q1 ++= List(4,5,7) // (9,4,5,7)
q1 += List(10,0) // List(10,0)
4.3キュー要素の出入り
//dequeue q1
val queueElement = q1.dequeue()
println("queueElement=" + queueElement + "q1="+q1)
//enQueue , . Redis
q1.enqueue(100,10,100,888)
println("q1=" + q1)
4.4キュー要素の取得
//1.
println(q1.head) // q1
//2.
println(q1.last) // q1
//3. , : ,
println(q1.tail)
println(q1.tail.tail.tail.tail)
5 mapの使用
5.1 mapの作成
# map
val map1 = Map("Alice" -> 10, "Bob" -> 20, "Kotlin" -> " ")
# map
import scala.collection.mutable
val map1 = new scala.collection.mutable.HashMap[String, Int] // map
val map2 = mutable.Map("Alice" -> 10, "Bob" -> 20, "Kotlin" -> " ") // key-value
val map3 = mutable.Map(("Alice", 10), ("Bob", 20), ("Kotlin", " ")) // map
5.2 mapの新しい要素の追加
map1 += "Alice" -> 10
5.3 map値の取得方法
# 1 map(key)
map4("Alice") // key java.util.NoSuchElementException: key not found
# 2 contains key
if (map4.contains("Alice")) {
println("key , =" + map4("Alice"))
} else {
println("key :)")
}
# 3- map.get(key).get
//1. key map.get(key) Some( ) , Some( ).get
//2. key map.get(key) None
map4.get("Alice").get
# 4- map4.getOrElse()
map4.getOrElse("Alice", " “) // key value,
5.4 map値の遍歴のいくつかの方式
for ((k, v)
6 setの使用
6.1 setの作成
# set
val set = Set(1, 2, 3) //
# set
import scala.collection.mutable
val set2 = mutable.Set(1,2,"hello")
6.2可変setセットの追加と削除要素
# ,
set2.add(4)
set += 4
# ,
set.remove(4) // 4
set -= 4