Scala 访问修饰符基本和Java的一样,分别有:private,protected,public
默认情况下,Scala 对象的访问级别都是 public
在 scala 中,对保护(Protected)成员的访问比 java 更严格一些。因为它只允许保护成员在定义了该成员的的类的子类中被访问。而在java中,用protected关键字修饰的成员,除了定义了该成员的类的子类可以访问,同一个包里的其他类也可以进行访问
作用域保护:
private[x] 或 protected[x]
x指代某个所属的包、类或单例对象
数组:
var z = new ArrayString
var z = Array("Runoob", "Baidu", "Google")
合并数组:
var myList1 = Array(1.9, 2.9, 3.4, 3.5)
var myList2 = Array(8.9, 7.9, 0.4, 1.5)
var myList3 = concat( myList1, myList2)
// 输出所有数组元素
for ( x <- myList3 ) {
println( x )
}
//创建二维数组
def ofDim[T]( n1: Int, n2: Int ): Array[Array[T]]
//创建三维数组
def ofDim[T]( n1: Int, n2: Int, n3: Int ): Array[Array[Array[T]]]
list:
val nums: List[Int] = List(1, 2, 3, 4)
// 空列表
val empty = Nil
// 字符串列表
val site = "Runoob" :: ("Google" :: ("Baidu" :: Nil))
// 整型列表
val nums = 1 :: (2 :: (3 :: (4 :: Nil)))
你可以使用 ::: 运算符或 List.:::() 方法或 List.concat() 方法来连接两个或多个列表
//迭代器
val it = Iterator("Baidu", "Google", "Runoob", "Taobao")
set
val set = Set(1,2,3)
println(set.exists(_ % 2 == 0)) //true
println(set.drop(1)) //Set(2,3)
import scala.collection.mutable.Set // 可以在任何地方引入 可变集合
使用 ++ 运算符或 Set.++() 方法来连接两个集合
使用 Set.& 方法或 Set.intersect 方法来查看两个集合的交集元素
def &(that: Set[A]): Set[A] 返回两个集合的交集
def &~(that: Set[A]): Set[A] 返回两个集合的差集
正则:
import scala.util.matching.Regex
val pattern = "Scala".r
val str = "Scala is Scalable and cool"
println(pattern findFirstIn str)
val pattern = new Regex("(S|s)cala") // 首字母可以是大写 S 或小写 s
val str = "Scala is scalable and cool"
println((pattern findAllIn str).mkString(",")) // 使用逗号 , 连接返回结果
println(pattern replaceFirstIn(str, "Java"))
网友评论