建立一个Java类,为了演示Java集合类型向Scala集合的转换: import java.util.ArrayList; import java.util.List; public class School { public List<String> ls = null; public School() { ls = new ArrayList<String>(); ls.add("abc"); ls.add("efg"); } } im…
定义一个函数: scala> def foo(x:Int)=x*2 foo: (x: Int)Int 可以采用匿名参数: scala> def foo:((Int)=>Int) = _*2 foo: Int => Int 这个函数的类型是Int=>Int: scala> var bar = foo _ bar: Int => Int = <function1> scala> var bar:(Int)=>Int = foo bar: Int…
scala> import scala.reflect._ import scala.reflect._ scala> class Person(@BeanProperty var name: String, val gender: Boolean=true){} defined class Person scala> val p = new Person("bluejoe") p: Person = Person@5905edf2 scala> p.setNa…
import collection.mutable.Buffer object CollectionDemo6 { def main(args: Array[String]): Unit = { //可变集合类型推导 val nums = Buffer(1) for (i <- 2 to 10) nums += i println(nums) //可变集合类型定义 val nums2 = Buffer[Int]() for (i <- 1 to 10) nums2 += i println(n…
集合的模式匹配操作: object CollectionDemo5 { def main(args: Array[String]): Unit = { //集合模式匹配1 val ls = List(1, 2, 3, 4, 5) println( ls match { case List(1, 2, 3) => "List(1,2,3)" case List(1, 2, 3, 4) => "List(1,2,3,4)" case List(1, 2, 3…
object CollectionDemo10 { def main(args: Array[String]): Unit = { var ls = List[Int](1, 2, 3) //向后增加元素 ls = ls :+ 4 //向前增加元素 ls = 0 +: ls //基本等价 ls = -1 :: ls //向前增加集合 ls = List(-2) ++: ls //基本等价 ls = List(-2) ::: ls //向后增加集合 ls = ls ++ List(5) print…
笔记的整理主要针对Scala对比Java的新特性: 1.if表达式 if表达式是有结果返回的. val a= if (5>2) "你好" else 1 a的值为if表达式返回值为 "你好" 2.while表达式 while表达式是没有返回值的(返回值为 Unit),在scala中避免使用,通常都需要与var结合使用 3.for表达式 枚举集合遍历 val a = Array(1,2,3,4,5,6) for (i <- a) println(…