基础语法

1)注意点

1)区分大小写 -  Scala是大小写敏感的,这意味着标识Hello 和 hello在Scala中会有不同的含义。

2)类名 - 对于所有的类名的第一个字母要大写。

3)方法名称 - 所有的方法名称的第一个字母用小写。

4)程序文件名 - 程序文件的名称应该与对象名称完全匹配。

5)def main(args: Array[String]) - Scala程序从main()方法开始处理,这是每一个Scala程序的强制程序入口部分。

2)val和var

Scala有两种变量:var和val。val类似与Java种的final变量,一旦初始化了,就不能再被赋值。相反,var可以在生命周期内被多次赋值!

scala> m=50
<console>:12: error: reassignment to val
m=50
^
scala> var t=60
t: Int = 60 scala> t=70
t: Int = 70

3)数据类型

Byte/Char

Short/Int/Long/Float/Double

Boolean

与类型相关的两个函数:

(1)isInstanceOf[T]:  判断对象是否为T类型的实例。

(2)asInstanceOf[T]: 强制类型转换

scala> var u=t.asInstanceOf[Double]
u: Double = 70.0 scala> u.isInstanceOf[Double]
res0: Boolean = true scala>

4)lazy

Scala中使用关键字lazy来定义惰性变量,实现延迟加载(懒加载)。 惰性变量只能是不可变变量,并且只有在调用惰性变量时,才会去实例化这个变量。

scala> lazy val t = 2+3
t: Int = <lazy> scala> print(t)
5

在定义t变量时并没有实例化这个变量,也就没有进行2+3计算,只有当使用到t时,例如打印t时,才会实例化t,进行计算。

5)Scala IDE

IDEA:安装scala插件

Eclipse:选择scala版本

IDEA整合Maven构建Scala应用程序:

最新文章

  1. 【转】39个让你受益的HTML5教程
  2. js创建和获取cookie
  3. Android高性能ORM数据库DBFlow入门
  4. sphinx.conf 详解
  5. Android自动接听&amp;挂断电话(包含怎么应对4.1以上版本的权限检
  6. poj 3249 Test for Job (记忆化深搜)
  7. POJ3026——Borg Maze(BFS+最小生成树)
  8. 如何使用Instruments诊断App(Swift版):起步-b
  9. 『Python』 爬取 WooYun 论坛所有漏洞条目的相关信息
  10. spring4笔记----“零配置”:spring提供的几个Annotation标注
  11. LCT维护删除时间最晚生成树
  12. [转] Lodash
  13. 【微软2014实习生及秋令营技术类职位在线測试】题目2 : K-th string
  14. replace 使用正则
  15. Linux 性能监控 : CPU 、Memory 、 IO 、Network
  16. BM25 调参调研
  17. Java Future 和 FutureTask 源码Demo
  18. 【Unity Shader】渲染管线
  19. XSS报警机制(前端防火墙:第二篇)
  20. Day19 客户关系系统实战

热门文章

  1. WPF 后台代码做 TranslateTransform 的动画
  2. .NET平台系列30:.NET Core/.NET 学习资源汇总
  3. Java设计模式(5:设计模式的分类及工厂模式详解)
  4. 「10.13」毛一琛(meet in the middle)&#183;毛二琛(DP)&#183;毛三琛(二分+随机化???)
  5. Electron-Vite2-MacUI桌面管理框架|electron13+vue3.x仿mac桌面UI
  6. MySQL 数据库设计的“奥秘”
  7. 『无为则无心』Python基础 — 10、Python字符串的格式化输出
  8. 4、nfs服务器的搭建
  9. flex发生错误积累。每次遇到错误记录一点点
  10. 资源:docker-compose下载路径