From 224379533e03e834e2bfa516ee655dc24e7c5855 Mon Sep 17 00:00:00 2001 From: luoxiang <2806718453@qq.com> Date: Sun, 5 May 2019 22:46:46 +0800 Subject: [PATCH] modify --- README.md | 2 + notes/Scala基本数据类型.md | 156 +++++++++++++++++++++++++++++++ pictures/scala-int+.png | Bin 0 -> 29813 bytes 3 files changed, 158 insertions(+) create mode 100644 notes/Scala基本数据类型.md create mode 100644 pictures/scala-int+.png diff --git a/README.md b/README.md index 65c7ec2..c74db7c 100644 --- a/README.md +++ b/README.md @@ -140,3 +140,5 @@ TODO ## 十二、Scala +1. [Scala简介及开发环境配置](https://github.com/heibaiying/BigData-Notes/blob/master/notes/Scala简介及开发环境配置.md) +2. \ No newline at end of file diff --git a/notes/Scala基本数据类型.md b/notes/Scala基本数据类型.md new file mode 100644 index 0000000..3a2967c --- /dev/null +++ b/notes/Scala基本数据类型.md @@ -0,0 +1,156 @@ +# Scala基本数据类型 + +## 一、数据类型 + +Scala 拥有下表所示的数据类型,其中Byte、Short、Int、Long和Char类型统称为整数类型,整数类型加上Float和Double统称为数值类型。Scala数值类型的取值范围和Java对应类型的取值范围相同。 + +| 数据类型 | 描述 | +| -------- | ------------------------------------------------------------ | +| Byte | 8位有符号补码整数。数值区间为 -128 到 127 | +| Short | 16位有符号补码整数。数值区间为 -32768 到 32767 | +| Int | 32位有符号补码整数。数值区间为 -2147483648 到 2147483647 | +| Long | 64位有符号补码整数。数值区间为 -9223372036854775808 到 9223372036854775807 | +| Float | 32 位, IEEE 754 标准的单精度浮点数 | +| Double | 64 位 IEEE 754 标准的双精度浮点数 | +| Char | 16位无符号Unicode字符, 区间值为 U+0000 到 U+FFFF | +| String | 字符序列 | +| Boolean | true或false | +| Unit | 表示无值,等同于Java中的void。用作不返回任何结果的方法的结果类型。Unit只有一个实例值,写成()。 | +| Null | null 或空引用 | +| Nothing | Nothing类型在Scala的类层级的最低端;它是任何其他类型的子类型。 | +| Any | Any是所有其他类的超类 | +| AnyRef | AnyRef类是Scala里所有引用类(reference class)的基类 | + +## 二、字面量 + +Scala和Java字面量在使用上很多相似,比如都使用F或f表示浮点型,都使用L或l表示Long类型。故下文主要介绍两者差异部分。 + +```scala +scala> 1.2 +res0: Double = 1.2 + +scala> 1.2f +res1: Float = 1.2 + +scala> 1.4F +res2: Float = 1.4 + +scala> 1 +res3: Int = 1 + +scala> 1l +res4: Long = 1 + +scala> 1L +res5: Long = 1 +``` + +### 2.1 整数字面量 + +Scala支持10进制和16进制,但不支持八进制字面量和以0开头的整数字面量。 + +```scala +scala> 012 +:1: error: Decimal integer literals may not have a leading zero. (Octal syntax is obsolete.) +``` + +### 2.2 字符串字面量 + +#### 1. 字符字面量 + +字符字面量由一对单引号和中间的任意Unicode字符组成。你可以显式的给出原字符、也可以使用字符的Unicode码来表示,还可以包含特殊的转义字符。 + +```scala +scala> '\u0041' +res0: Char = A + +scala> 'a' +res1: Char = a + +scala> '\n' +res2: Char = +``` + +#### 2. 字符串字面量 + +字符串字面量由双引号包起来的字符组成。 + +```scala +scala> "hello world" +res3: String = hello world +``` + +#### 3.原生字符串 + +Scala提供了`""" ... """`语法,通过三个双引号来表示原生字符串和多行字符串,使用该种方式,原生字符串中的特殊字符不会被转义。 + +```scala +scala> "hello \tool" +res4: String = hello ool + +scala> """hello \tool""" +res5: String = hello \tool + +scala> """hello + | world""" +res6: String = +hello +world +``` + +### 2.3 符号字面量 + +符号字面量写法为: `'标识符` ,这里 标识符可以是任何字母或数字的组合。符号字面量会被映射成`scala.Symbol`的实例,如:符号字面量 `'x `会被编译器翻译为`scala.Symbol("x")`。符号可选方法很少,只能通过`.name`获取其名称。 + +需要注意的是:任意的同名symbols都指向同一个Symbol对象,而不同名的symbols一定指向不同的Symbol对象。 + +```scala +scala> val sym = 'ID008 +sym: Symbol = 'ID008 + +scala> sym.name +res12: String = ID008 +``` + +### 2.4 插值表达式 + +Scala支持插值表达式。 + +```scala +scala> val name="xiaoming" +name: String = xiaoming + +scala> println(s"My name is $name,I'm ${2*9}.") +My name is xiaoming,I'm 18. +``` + +## 三、运算符 + +Scala和其他语言一样,支持大多数的操作运算符: + +- 算术运算符(+,-,*,/,%) +- 关系运算符(==,!=,>,<,>=,<=) +- 逻辑运算符(&&,||,!,&,|) +- 位运算符(~,&,|,^,<<,>>,>>>) +- 赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,&=,^=,|=) + +以上操作符的基本使用与其他语言类似,以下主要介绍差异部分和注意事项。 + +### 3.1 运算符即方法 + +Scala的面向对象比Java更加纯粹,在Scala中一切都是对象。对于`1+2`,实际上是调用了Int类中名为`+`的方法,所以1+2,也可以写成`1.+(2)`。 + +```scala +scala> 1+2 +res14: Int = 3 + +scala> 1.+(2) +res15: Int = 3 +``` + +Int类中包含了多个重载的`+`方法,用于分别接收不同类型的参数。 + +![scala-int+](D:\BigData-Notes\pictures\scala-int+.png) + +### 3.2 运算符优先级 + diff --git a/pictures/scala-int+.png b/pictures/scala-int+.png new file mode 100644 index 0000000000000000000000000000000000000000..2db54a93d1673552d6a3530d5fecffa1b85cfc4a GIT binary patch literal 29813 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 literal 0 HcmV?d00001