Scala入门

0目录

|--------------------------------------------------------------------------------|
| 1.Scala 安装 2. 变量和常量;基础数据类型和运算符 3. 流程控制语句 4. 练习 |

1.Scala安装

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 下一步安装 |
| Cmd 输入Scala |
| 下载scala插件 |
| 添加框架 |
| 新建Scala Object |
| 修改项目结构 |
| 设置(Setting 编辑器为8) |

2.变量和常量;基础数据类型和运算符

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 打印hello word |
| var 变量 val 常量 1 )基本语法 var | val 变量名 [: 变量类型] = 变量值 var a:Int = 19 // 变量 val b:Int = 20 // 常量 说明:在Scala中声明一个变量时,可以不指定类型,编译器根据值确定 大部分情况下用的都是常量。能用常量的地方不用变量。 |
| 在声明/定义一个变量时,可以使用var或者val来修饰,var修饰的变量可改变,val修饰的变量不可改。 |
| 字符串输出 (1)字符串,通过+号连接 (2)printf用法:字符串,通过%传值。 (3)字符串,通过$引用 ##### |
| 键盘输入 在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。 1)基本语法 StdIn.readLine()、StdIn.readShort()、StdIn.readDouble() 2)案例实操 需求:可以从控制台接收用户信息【姓名,年龄,薪水】。 |
| 数据类型 |
| Scala数据类型关系总结  1)Scala中一切数据都是对象,都是Any的子类。  2)Scala中数据类型分为两大类:数值类型(AnyVal)、引用类型(AnyRef),不管是值类型还是引用类型都是对象。  3)Scala数据类型仍然遵守,低精度的值类型向高精度值类型,自动转换(隐式转换)  4) Scala特殊的类型之Null,它只有一个实例就是Null,它是所有引用类型(AnyRef)的子类。  5)Scala特殊类型之Nothing,是所有数据类型的子类,主要在一个函数没有正常返回值使用,因为这样我们可以把抛出的返回值,返回给任何的变量或者函数。 |
| 运算符 基本语法 |
| 比较运算符 基本语法 |
| |
| 逻辑运算符 基本语法   用于连接多个条件(一般来讲就是关系表达式),最终的结果也是一个Boolean值。   假定:变量A为true,B为false |
| 赋值运算符 基本语法  赋值运算符就是将某个运算后的值,赋给指定的变量。 |

3.流程控制语句

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| If else 单分支 |
| If-else 多分支 |
| For 循环 基本语法 注意区分to 和util的区别 |
| 循环步长(by关键字) |
| 循环返回值 将遍历过程中处理的结果返回到一个新Vector集合中,使用yield关键字 |
| While 循环 基本语法 说明: (1)循环条件是返回一个布尔值的表达式 (2)while循环是先判断再执行语句 (3)与if语句不同,while语句没有返回值,即整个while语句的结果是Unit类型() (4)因为while中没有返回值,所以当要用该语句来计算并返回结果时,就不可避免的使用变量,而变量需要声明在while循环的外部,那么就等同于循环的内部对外部的变量造成了影响,也就违背了函数式编程的重要思想(输入=>函数=>输出,不对外界造成影响),所以不推荐使用,而是推荐使用for循环。 |
| do while循环 |
| While循环中断 Scala内置控制结构特地去掉了break和continue,是为了更好的适应函数式编程,推荐使用函数式的风格解决break和continue的功能,而不是一个关键字。scala中使用breakable控制结构来实现break和continue功能。 循环遍历10以内的所有数据,奇数打印,偶数跳过(continue) |

4.练习

|---------------------------------------------------------------------------------------------------------------|
| 打印99乘法表 |
| 打印直角三角形 |
| 打印等腰三角形 |
| 打印菱形 |
| 简单公式 |
| |

相关推荐
feifeigo1234 分钟前
Leslie人口模型MATLAB实现(中长期人口预测)
开发语言·matlab
写代码的二次猿28 分钟前
安装openfold(顺利解决版)
开发语言·python·深度学习
一只大袋鼠30 分钟前
Redis 安装+基于短信验证码登录功能的完整实现
java·开发语言·数据库·redis·缓存·学习笔记
※DX3906※1 小时前
Java排序算法--全面详解面试中涉及的排序
java·开发语言·数据结构·面试·排序算法
笨笨马甲2 小时前
Qt QSS使用指南
开发语言·qt
Nan_Shu_6143 小时前
学习: 尚硅谷Java项目之小谷充电宝(3)
java·后端·学习
智能工业品检测-奇妙智能3 小时前
AIFlowy如何实现与现有Spring Boot项目的无缝集成?
java·spring boot·后端
We་ct3 小时前
LeetCode 77. 组合:DFS回溯+剪枝,高效求解组合问题
开发语言·前端·算法·leetcode·typescript·深度优先·剪枝
格林威3 小时前
工业相机图像高速存储(C#版):内存映射文件方法,附Basler相机C#实战代码!
开发语言·人工智能·数码相机·c#·机器视觉·工业相机·堡盟相机
Nuopiane3 小时前
MyPal3(3)
java·开发语言