首页 > 代码库 > scala语言与java的区别 (1)

scala语言与java的区别 (1)

  1. scala支持关联映射,如可以用(key -> value)表示一个键值对

  2. scala中的所有类型都是对象,包括基本数据类型

  3. scala中的case语句用来判断接收的消息,比java中的switch...case...更专注

    receive{    case msg => action()    }

  4. scala行动类实现了线程之上的并发抽象,通过发送消息相互通信,每个行动类都自动维护一个消息队列,并且实现发送消息和接收消息的基本操作。

    receriver ! msg

  5. scala是静态类型的,也即在编译之前就需要确定参数的类型,与C++的参数化类型相似

  6. scala包含两种类型的变量,val变量相当于java中的const,var则是常规变量

  7. scala中的基本数据类型,来源于Java中对相应数据类型的类封装,String类型则相同

  8. scala具有类型推断功能,在可由上下文推断的情况下,可以省略类型说明,如:val x = 4

  9. scala通过def关键字定义函数,在缺省显式return语句的情况下,返回函数最后计算得到的值

  10. scala采用println直接输出到标准输出,而不用System.out.println

  11. scala中的数组索引是args(0),而非java中的args[0]

  12. scala数组Array包含方法foreach(action),其中action是一个传入的函数,例如:x => println(x)

  13. scala提供指令式:for(args <- args)    println(arg)


scala语言与java的区别 (1)