Scala学习一:语法基础/数据类型/变量

一、基础语法

1.1 命名要点

  1. 区分大小写
  2. 类名 - 对于所有的类名的第一个字母要大写,并且用驼峰式写法
  3. 方法名称 - 所有的方法名称的第一个字母用小写,如果多个单词,后面的单词驼峰式
  4. 程序文件名 - 程序文件的名称应该与对象名称完全匹配(新版本不需要了,但建议保留这种习惯)

1.2 标识符

Scala 可以使用两种形式的标志符,字符数字和符号

1.3 关键字

1.4 Scala注释

支持当行跟多行

1.5 换行符

语句可以用分号(;)结束或换行符

如果一行只有一个语句,可以不写;

如果一行有多个语句,需要写

1.6 Scala包

1.6.1 包的定义
  1. 在文件的头定义包名,这种方法就后续所有代码都放在该包中
scala 复制代码
package com.runoob
class HelloWorld
  1. 在一个文件中定义多个包
scala 复制代码
package com.runoob{
	class HelloWorld
}
1.6.2 包的引用

包的引用可以在任何地方,不需要在顶部

import的效果从引用开始延伸到语句块结束

scala 复制代码
import java.awt.Color
import java.awt._  // 引入包内所有成员
 
def handler(evt: event.ActionEvent) { // java.awt.event.ActionEvent
  ...  // 因为引入了java.awt,所以可以省去前面的部分
}

如果想要引用包中的几个成员,可以使用selector(选取器)

scala 复制代码
import java.awt.{Color, Font}
// 重命名成员
import java.util.{HashMap => JavaHashMap}
// 隐藏成员
import java.util.{HashMap => _, _} // 引入了util包的所有成员,但是HashMap被隐藏了

注意:默认情况下,Scala 总会引入 java.lang._ 、 scala._ 和 Predef._,这里也能解释,为什么以scala开头的包,在使用时都是省去scala.的。

二、Scala数据类型

整数、浮点数、字符、字符串、布尔值、空值

数据类型 描述
Byte 8位有符号补码整数。数值区间为 -128 到 127
Short 16位
Int 32位
Long 64位
Float 32 位, IEEE 754 标准的单精度浮点数
Double 64位
Char 16位无符号Unicode字符
String 字符序列
Boolean true或false
Unit 表示无值,和其他语言中void等同。用作不返回任何结果的方法的结果类型。Unit只有一个实例值,写成()
Null null或空引用
Nothing Nothing类型在Scala的类层级的最底端;它是任何其他类型的子类型
Any Any是所有其他类的超类
AnyRef AnyRef类是Scala里所有引用类(reference class)的基类

2.1 Scala基础字面量

整型字面量

用于Int类型,如果表示 Long,可以在数字后面添加 L 或者小写 l 作为后缀,比如0777L
浮点型字面量

如果浮点数后面又f,表示是Float类型,否则就是Double, 0.0, 3.14159f
布尔型字面量
truefalse
符号字面量
字符字面量

'来定义,a\表示转义字符,\n
字符串字面量

多行字符串用三个双引号来表示分隔符,格式为:""" ... """
Null值

空值是 scala.Null 类型

Scala.Null和scala.Nothing是用统一的方式处理Scala面向对象类型系统的某些"边界情况"的特殊类型

Null类是null引用对象的类型,它是每个引用类(继承自AnyRef的类)的子类。Null不兼容值类型。

三、Scala变量

变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间

3.1 变量声明

关键词var声明变量,val声明常量,常量不能修改

scala 复制代码
var myVar:String = "Foo"
val myVal:String = "Too"

3.2 变量类型引用

变量的类型在变量名之后等号之前声明。定义变量的类型的语法格式如下:

scala 复制代码
var VariableName:DataType [=  Initial Value]
val VariableName:DataType [=  Initial Value]

3.3 变量类型引用

在 Scala 中声明变量和常量不一定要指明数据类型,在没有指明数据类型的情况下,其数据类型是通过变量或常量的初始值推断出来的。

所以,如果在没有指明数据类型的情况下声明变量或常量必须要给出其初始值,否则将会报错

scala 复制代码
var myVar = 10;
val myVal = "Hello, Scala!";

3.4 Scala多个变量声明

支持多个变量声明

如果方法返回值是元组,可以使用val来声明一个元祖

scala 复制代码
val xmax, ymax = 100;  // xmax, ymax都声明为100
val pa = (40,"Foo"); //(Int, String) = (40,Foo)

参考连接:https://www.runoob.com/scala/scala-strings.html

相关推荐
西岸行者3 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意3 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习
im_AMBER4 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J4 天前
从“Hello World“ 开始 C++
c语言·c++·学习