type
status
date
slug
summary
tags
category
icon
password

第二章 变量和数据类型

2.1 注释

1)基本语法

(1)单行注释://

(2)多行注释:/* */

(3)文档注释:/** **/

2)示例

3)代码规范

(1)使用一次tab操作,实现缩进,默认整体向右边移动,用shift+tab整体向左移动

(2)或者使用CTRL+alt+l进行格式化

(3)运算符两边习惯各加一个空格。例如:2 + 3 * 5

(4)一行最长不超过80个字符,超过换行

2.2变量和常量(重点)

常量:在程序执行的过程中,其值不会被改变的变量

0)回顾:Java变量和常量语法

变量类型 变量名称 = 初始值 int a = 10
final 常量类型 常量名称 = 初始值 final int b = 20

1)基本语法

var 变量名 [:变量类型] = 初始值 var i :Int =10
val 常量名 [:变量类型] = 初始值 val j :Int =10
注意:能用常量的地方不用变量

2)案例实操

2.3 标识符的命名规则

Scala对各种变量、方法、函数等命名时使用的字符序列称为标识符。

1)命名规则

(1)以字母或者下划线开头,后续字母、数字、下划线

(2)以操作符开头,且只包括操作符(+ - * 、/ # !等)

(3)用反引号....包括的任意字符串,即使是Scala关键字(39个)也可以

2.4 字符串输出

1)基本语法

(1)字符串,通过+号来链接

(2)printf用法:字符串,通过%传值

(3)字符串模板(插值字符串):通过$获取变量值

2)案例实操

##

2.5 键盘输入

1)基本语法

2)案例实操

2.5 文本的读取

2.6 数据类型

notion image
notion image

2.7 整数类型(Byte,Short,Int,Long)

2.8 浮点类型(Float,Double)

2.9 字符类型(Char)

1)基本说明

字符类型可以表示单个字符,字符类型是Char

2)案例实操

(1)字符常量是用单引号‘ ’括起来的单个字符

(2)\t : 一个制表符

(3)\n : 换行符

(4)\\ : 表示\

(4)\" : 表示"

2.10 布尔类型:Boolean

1)基本说明

(1)Boolean类型数据只允许取值true和false

(2)Boolean类型占一个字节

2.11 Unit类型、Null类型和Nothing类型(重点)

1)基本说明

2)案例实操

2.12 类型转换

notion image

2.12.1 数据类型自动转化

1)基本说明

(1)自动提升原则:有多种类型的数据混合运算时,系统首先自动将所有的数据转换成精度大的那种数据类型,然后进行计算

(2)把精度大的数值类型赋值给精度小的数值类型时,就会报错,反之就会进行自动类型转换

(3)(byte, short) 和 char 之间不会相互自动转换

(4)byte,short,char他们三者可以计算,在计算时首先转换为int类型

2)案例实操

2.12.2 强制类型转换

1)基本说明

自动类型转换的逆过程,将精度大的数值类型转换为精度小的数值类型,使用时要加上强制转函数,但可能造成精度降低或者溢出,要格外注意

2)案例实操

(1)将数据由高精度转换为低精度,就需要使用到强制类型转换

(2)强制符号只针对于最近的操作数有效,往往会使用小括号提升优先级

2.12.3 数值类型和String类型间转换

第三章 运算符

3.1 算数运算符

1)基本语法

3.2 关系型运算符

1)基本语法

notion image

3.3 逻辑运算符

1)基本语法

用于连接多个条件(一般来将就是关系表达式),最终的结果也是一个Boolean值。
假定:变量A为true,B为false
notion image

2)案例实操

3.4 赋值运算符

1)基本语法

赋值运算就是将某个运算后的值,赋给指定的变量
notion image
notion image

2)案例实操

3.5 位运算符 负数补码取反加1

1)基本语法

变量a为60,b为13
notion image

2)案例实操

3.6 scala 运算符本质(方法的调用)

第四章 流程控制

4.1 分支控制 if_else

让程序有选择的执行,分支控制有三种:单分支、双分支、多分支

4.1.1 单分支

4.1.2 双分支

4.1.3 多分支

1)基本语法

notion image
说明:当条件表达式为true时,就会执行{ }内的语句

2)案例实操

4.1.3 分支条件的返回值

//scala中允许代码写在同一行,{ }内如果只有一行代码可以直接省略

4.2 嵌套分支

4.3 For循环控制

notion image

4.3.1 范围数据循环(to)

1)基本语法

(1) i表示循环的变量,规定 <- to

(2) i将会从 1-3 循环,前后闭合

2)案例实操

4.3.2 范围数据循环(until)

4.3.3 循环守卫

1)基本语法

说明:
(1)循环守卫,即循环保护式(也称条件判断式,守卫)。保护式为true则进入循环内部,相当于false跳过,类似于continue
(2)上面的代码等价:
notion image

2)案例实操

4.3.4 循环步长

4.3.5 嵌套循环

1)基本语法

说明:没有关键字,范围后面一定要加 ; 来隔断逻辑

2)基本语法

与上面代码等价

3) 案例实操

4.3.6 引入变量

1)基本语法

说明:
1、for 推导式一行中有多个表达式时,要加 ; 来隔断逻辑
2、for 推导式有一个不成文的规定:当 for 推导式包含单一表达式时使用园括号,
当包含多个表达式时,并用花括号代替园括号,如下

2)案例实操

4.3.7 循环返回值

1)基本语法

说明:将遍历过程中处理的结果返回到一个新的vector 集合中,使用yield关键字

2)案例实操

4.6 循环中断

1)基本说明

scala 中没有break,contiune

2)案例实操

第五章 函数式编程

notion image

5.1函数基础

5.1.1 函数基本语法

1)基本语法

notion image

2)案例实操

notion image

5.1.2 函数与方法的区别

1)核心概念

notion image

2)案例实操

notion image

5.1.3 函数定义

1)函数定义

2)案例实操

5.1.4 函数参数

1)案例实操

5.1.5 函数至简原则

1)至简原则细节

5.2 函数高级

5.2.1 高阶函数

5.2.2 匿名函数

1)说明

notion image

2)案例实操

传递匿名函数至简原则:
Hive离线数仓指标计算Flume学习笔记
y
y
一个普通的干饭人🍚
公告
type
status
date
slug
summary
tags
category
icon
password
🎉欢迎每位读者🎉
-- 感谢您的支持 ---