Scala学习——基础入门
2024-08-28 20:00:20
基础语法
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应用程序:
最新文章
- 【转】39个让你受益的HTML5教程
- js创建和获取cookie
- Android高性能ORM数据库DBFlow入门
- sphinx.conf 详解
- Android自动接听&;挂断电话(包含怎么应对4.1以上版本的权限检
- poj 3249 Test for Job (记忆化深搜)
- POJ3026——Borg Maze(BFS+最小生成树)
- 如何使用Instruments诊断App(Swift版):起步-b
- 『Python』 爬取 WooYun 论坛所有漏洞条目的相关信息
- spring4笔记----“零配置”:spring提供的几个Annotation标注
- LCT维护删除时间最晚生成树
- [转] Lodash
- 【微软2014实习生及秋令营技术类职位在线測试】题目2 : K-th string
- replace 使用正则
- Linux 性能监控 : CPU 、Memory 、 IO 、Network
- BM25 调参调研
- Java Future 和 FutureTask 源码Demo
- 【Unity Shader】渲染管线
- XSS报警机制(前端防火墙:第二篇)
- Day19 客户关系系统实战
热门文章
- WPF 后台代码做 TranslateTransform 的动画
- .NET平台系列30:.NET Core/.NET 学习资源汇总
- Java设计模式(5:设计模式的分类及工厂模式详解)
- 「10.13」毛一琛(meet in the middle)&#183;毛二琛(DP)&#183;毛三琛(二分+随机化???)
- Electron-Vite2-MacUI桌面管理框架|electron13+vue3.x仿mac桌面UI
- MySQL 数据库设计的“奥秘”
- 『无为则无心』Python基础 — 10、Python字符串的格式化输出
- 4、nfs服务器的搭建
- flex发生错误积累。每次遇到错误记录一点点
- 资源:docker-compose下载路径