2015年5月15日

摘要: 使用并行集合,能够并行的访问集合,大幅提高性能。举例:1 val urls = List("http://scala-lang.org",2 "https://github.com/yankay/scala-tour")3 4 def fromURL(url: String) = scala.i... 阅读全文
posted @ 2015-05-15 17:03 wlwgcdxc 阅读(287) 评论(0) 推荐(0)
 
摘要: 。 阅读全文
posted @ 2015-05-15 16:32 wlwgcdxc 阅读(115) 评论(0) 推荐(0)
 
摘要: Scala提供了Option机制来解决,代码中不断检查null的问题。标准类库中,Option采用样例类实现,有两个样例子类:Some和NoneSome中包装了一个值,可以使用泛型。None中则表示没有值。Option举例: 1 def getProperty(name: String): Opti... 阅读全文
posted @ 2015-05-15 12:32 wlwgcdxc 阅读(171) 评论(0) 推荐(0)
 
摘要: 循环语句是指令式编程的常见语句,Scala对其加以改进,成为适应函数式风格的利器。for循环中的变量,没有val或者var,是因为变量的类型,完全是集合中的元素的类型。作用域持续到括号结束。在scala中,没有continue和break。continue可以用if守卫来完成。break有一下几种方... 阅读全文
posted @ 2015-05-15 12:02 wlwgcdxc 阅读(163) 评论(0) 推荐(0)
 
摘要: 尾递归是递归的一种,尾递归是函数式编程的常见写法,特点在于会在函数的最末调用自身。尾递归会在编译期优化,因此不用担心递归造成的栈溢出问题。举例: 1 val file = List("warn 2013 msg", "warn 2012 msg", 2 "error 2013 msg", "wa... 阅读全文
posted @ 2015-05-15 11:35 wlwgcdxc 阅读(200) 评论(0) 推荐(0)
 
摘要: 模式匹配是类似switch-case特性,但更加灵活;也类似if-else,但更加简约。 1 def fibonacci(i : Any) : Int = i match { 2 case 0 => 0 3 case 1 => 1 4 case n : Int if (n >... 阅读全文
posted @ 2015-05-15 00:31 wlwgcdxc 阅读(456) 评论(0) 推荐(0)