好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Scala开发小小总结

Scala开发小小总结

用Scala开发项目大概有4个月了,当初选择Scala的时候出于两点考虑:一是我对Java还比较熟悉,可以让我很快上手;二是Scala简洁的语法,可以让我少写很多代码。下面是本人的一些总结列表。

1.Scala的官方网站http://www.scala-lang.org/,Scala Eclipse的插件地址http://scala-ide.org/

2.推荐一篇写的很好的文章http://qiujj.com/static/Scala-Handbook.htm

3. 一个用于实现try finally关闭资源的trait

1  trait Disposable {
2    def using[T <: { def close(): Unit }](closable: T)(block: T => Unit) {
3       try  {
4        block(closable)
5      }  finally  {
6        closable.close()
7      }
8    }
9  }

 一个简单使用Disposable的例子:

 1    def execute(dataSource: DataSource,sql: String) = {
 2      using(dataSource.getConnection()) { conn =>
 3        {
 4          using(conn.prepareStatement(sql)) { st =>
 5            {
 6              st.execute()
 7            }
 8          }
 9        }
10      }
11    }

4. 创建一个console app,只需要extends App就可以:

1  object TestApp  extends  App {
2    println("test")
3  }

5. 常用循环

1       for  (i <- 0 to 5) {
2        println(i)
3      }

从0打印到4 

1       for  (i <- 0 until 5) {
2        println(i)
3      }

foreach的用法

1      val array = Array(0, 1, 2, 3, 4, 5)
2  
3      array.foreach(i => println(i))
4      array.foreach(println(_))
5      array.foreach(println)

6.打印Map元素

1      val map = Map(0 -> 0, 1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4, 5 -> 5)
2  
3      map.foreach {
4         case  (key, value) => {
5          println("key:" + key + " value:" + value)
6        }
7      }

7.集合常用操作

+= 添加元素

++ 合并集合

drop(n) 移除前n个元素

take(n) 获取前n个元素

filter(condition) 获取指定condition的元素

1      val array1 = Array(0, 1, 2, 3, 4, 5)
2      val array2 = Array(6, 7, 8, 9)
3      val array3 = array1 ++ array2
4  
5      array3.foreach(println)
6      array3.take(1).foreach(println)
7      array3.drop(1).foreach(println)
8      array3.filter(_ != 1).foreach(println)

 8.类的定义

1   class  Item(val id: String, val img Int, val imgheight: Int) {
2  
3  }

 当构造中没有使用val时,是无法获取对象对应属性;使用val只能get,使用var可以get和set

 

 

标签:  scala

作者: Leo_wl

    

出处: http://www.cnblogs.com/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于Scala开发小小总结的详细内容...

  阅读:37次