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乘法表 |
| 打印直角三角形 |
| 打印等腰三角形 |
| 打印菱形 |
| 简单公式 |
| |

相关推荐
傻啦嘿哟1 分钟前
实战:用Splash搞定JavaScript密集型网页渲染
开发语言·javascript·ecmascript
Knight_AL5 分钟前
Java 线程池预热(Warm-up)实战:开启与不开启到底差多少?
java·开发语言
爬山算法6 分钟前
Netty(15)Netty的线程模型是什么?它有哪些线程池类型?
java·后端
liwulin050623 分钟前
【PYTHON】COCO数据集中的物品ID
开发语言·python
小鸡吃米…23 分钟前
Python - XML 处理
xml·开发语言·python·开源
白宇横流学长1 小时前
基于SpringBoot实现的冬奥会科普平台设计与实现【源码+文档】
java·spring boot·后端
APIshop1 小时前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫
Mr.Jessy1 小时前
JavaScript高级:深浅拷贝、异常处理、防抖及节流
开发语言·前端·javascript·学习
Python编程学习圈1 小时前
Asciinema - 终端日志记录神器,开发者的福音
后端
bing.shao1 小时前
Golang 高并发秒杀系统踩坑
开发语言·后端·golang