版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012292754/article/details/85156715
1 数组
1.1 定长数组
类名()
==》 调用 Object 的apply
方法
1.2 可变数组
package com.scalatest.scala.array
//继承了 App ,不用写main方法了
object ArrayApp extends App{
val b = scala.collection.mutable.ArrayBuffer[Int]()
b += 1
b += 2
println(b)
}
package com.scalatest.scala.array
//继承了 App ,不用写main方法了
object ArrayApp extends App {
val b = scala.collection.mutable.ArrayBuffer[Int]()
b += 1
b += 2
b += (3, 4, 5, 6)
b ++= Array(8, 9, 10) // ArrayBuffer(1, 2, 3, 4, 5, 6, 8, 9, 10)
b.insert(0, 0) // ArrayBuffer(0, 1, 2, 3, 4, 5, 6, 8, 9, 10)
b.remove(1) // ArrayBuffer(0, 2, 3, 4, 5, 6, 8, 9, 10)
b.remove(0, 3) // ArrayBuffer(4, 5, 6, 8, 9, 10)
b.trimEnd(2) // ArrayBuffer(4, 5, 6, 8)
for (i <- 0 until b.length) {
print(b(i))
}
println()
for (i <- (0 until b.length).reverse) {
print(b(i))
}
println()
for (ele <- b) {
print(ele)
}
println()
println(b)
}
2 List
package com.scalatest.scala.array
object ListApp extends App{
val l = List(1,2,3,4,5)
val l5 = scala.collection.mutable.ListBuffer[Int]()
l5 += 2
l5 += (3,4,5)
l5 ++= List(6,7,8) // ListBuffer(2, 3, 4, 5, 6, 7, 8)
l5 -= 2 // ListBuffer(3, 4, 5, 6, 7, 8)
l5 -= (3,100) // ListBuffer(4, 5, 6, 7, 8)
l5 --= List(5,6,7,8) // ListBuffer(4)
println(l5)
}
2.1 Nil
一个空的不可变集合
2.2 List 的 head
tail
-
第一个是
head
,其余的都是tail
-
::
分隔 head,tail
2.3 :_*
package com.scalatest.scala.array
object ListApp extends App {
def sum(nums: Int*): Int = {
if (nums.length == 0) {
0
} else {
nums.head + sum(nums.tail: _*)
}
}
println(sum())
println(sum(1,2,3,4))
}
\
3 Set
- 元素无序,不能重复
package com.scalatest.scala.array
object ListApp extends App {
val set = scala.collection.mutable.Set[Int]()
set += 1
set += (3,2,6,4)
println(set)
}