做网站使网页不居中自己做的网站抬头在哪里改
- 作者: 五速梦信息网
- 时间: 2026年03月19日 09:53
当前位置: 首页 > news >正文
做网站使网页不居中,自己做的网站抬头在哪里改,图书馆管理网站建设logo,母婴用品网站建设规划Scala第二章节 scala总目录 章节目标 掌握变量, 字符串的定义和使用掌握数据类型的划分和数据类型转换的内容掌握键盘录入功能理解Scala中的常量, 标识符相关内容 1. 输出语句和分号 1.1 输出语句 方式一: 换行输出 格式: println(里边写你要打印到控制台的数据);方式二…Scala第二章节 scala总目录 章节目标 掌握变量, 字符串的定义和使用掌握数据类型的划分和数据类型转换的内容掌握键盘录入功能理解Scala中的常量, 标识符相关内容 1. 输出语句和分号 1.1 输出语句 方式一: 换行输出 格式: println(里边写你要打印到控制台的数据);方式二: 不换行输出 格式: print(里边写你要打印到控制台的数据);注意: 不管是println(), 还是print()语句, 都可以同时打印多个值.格式为: println(值1, 值2, 值3…) 1.2 分号 Scala语句中, 单行代码最后的分号可写可不写. 如果是多行代码写在一行, 则中间的分号不能省略, 最后一条代码的分号可省略不写. 示例: println(Hello, Scala!) //最后的分号可写可不写 //如果多行代码写在一行, 则前边语句的分号必须写, 最后一条语句的分号可以省略不写. println(Hello); println(Scala) 2. Scala中的常量 2.1 概述 常量指的是: 在程序的运行过程中, 其值不能发生改变的量. 2.2 分类 字面值常量(常用的有以下几种) 整型常量浮点型常量字符常量字符串常量布尔常量空常量 自定义常量(稍后解释) 2.3 代码演示 //整型常量 println(10) //浮点型常量 println(10.3) //字符常量, 值要用单引号括起来 println(a) //字符串常量, 值要用双引号括起来 println(abc) //布尔常量, 值只有true和false println(true) //空常量 println(null)3. Scala中的变量 3.1 概述 我们将来每一天编写scala程序都会定义变量, 那什么是变量, 它又是如何定义的呢? 变量, 指的就是在程序的执行过程中, 其值可以发生改变的量. 定义格式如下: 3.2 语法格式 Java变量定义 int a 0;在scala中可以使用val或者var来定义变量语法格式如下: val/var 变量名:变量类型 初始值其中 val定义的是不可重新赋值的变量, 也就是自定义常量.var定义的是可重新赋值的变量 注意: scala中定义变量时, 类型写在变量名后面 3.3 示例 需求定义一个变量保存一个人的名字tom 步骤 打开scala解释器定义一个字符串类型的变量用来保存名字 参考代码 scala val name:String tom name: String tom3.4 val和var变量的区别 示例 给名字变量进行重新赋值为Jim观察其运行结果 参考代码 scala name Jim console:12: error: reassignment to valname Jim示例 使用var重新定义变量来保存名字tom并尝试重新赋值为Jim观察其运行结果 参考代码 scala var name:String tom name: String tomscala name Jim name: String Jim注意: 优先使用val定义变量如果变量需要被重新赋值才使用var 3.5 使用类型推断来定义变量 scala的语法要比Java简洁我们可以使用一种更简洁的方式来定义变量。 示例 使用更简洁的语法定义一个变量保存一个人的名字tom 参考代码 scala val name tom name: String tomscala可以自动根据变量的值来自动推断变量的类型这样编写代码更加简洁。
- 字符串 scala提供多种定义字符串的方式将来我们可以根据需要来选择最方便的定义方式。 使用双引号使用插值表达式使用三引号 4.1 使用双引号 语法 val/var 变量名 “字符串”示例 有一个人的名字叫hadoop请打印他的名字以及名字的长度。 参考代码 scala println(name name.length) hadoop64.2 使用插值表达式 scala中可以使用插值表达式来定义字符串有效避免大量字符串的拼接。 语法 val/var 变量名 s\({变量/表达式}字符串注意: 在定义字符串之前添加s在字符串中可以使用\){}来引用变量或者编写表达式 示例 请定义若干个变量分别保存“zhangsan”、23、“male”定义一个字符串保存这些信息。 打印输出namezhangsan, age23, sexmale 参考代码 scala val name zhangsan name: String zhangsanscala val age 23 age: Int 23scala val sex male sex: String malescala val result sname\({name}, age\){age}, sex\({sex} result: String namezhangsan, age23, sexmalescala println(result) namezhangsan, age23, sexmale4.3 使用三引号 如果有大段的文本需要保存就可以使用三引号来定义字符串。例如保存一大段的SQL语句。三个引号中间的所有内容都将作为字符串的值。 语法 val/var 变量名 字符串1 字符串2示例 定义一个字符串保存以下SQL语句 select* fromt_user wherename zhangsan打印该SQL语句 参考代码 val sql select| *| from| t_user| where| name zhangsanprintln(sql)4.4 扩展: 惰性赋值 在企业的大数据开发中有时候会编写非常复杂的SQL语句这些SQL语句可能有几百行甚至上千行。这些SQL语句如果直接加载到JVM中会有很大的内存开销, 如何解决这个问题呢 当有一些变量保存的数据较大时而这些数据又不需要马上加载到JVM内存中。就可以使用惰性赋值来提高效率。 语法格式 lazy val/var 变量名 表达式示例 在程序中需要执行一条以下复杂的SQL语句我们希望只有用到这个SQL语句才加载它。 insert overwrite table adm.itcast_adm_personasselecta.user_id,a.user_name,a.user_sex,a.user_birthday,a.user_age,a.constellation,a.province,a.city,a.city_level,a.hex_mail,a.op_mail,a.hex_phone,a.fore_phone,a.figure_model,a.stature_model,b.first_order_time,b.last_order_time,...d.month1_hour025_cnt,d.month1_hour627_cnt,d.month1_hour829_cnt,d.month1_hour10212_cnt,d.month1_hour13214_cnt,d.month1_hour15217_cnt,d.month1_hour18219_cnt,d.month1_hour20221_cnt,d.month1_hour22223_cntfrom gdm.itcast_gdm_user_basic aleft join gdm.itcast_gdm_user_consume_order b on a.user_idb.user_idleft join gdm.itcast_gdm_user_buy_category c on a.user_idc.user_idleft join gdm.itcast_gdm_user_visit d on a.user_idd.user_id;参考代码 scala lazy val sql insert overwrite table adm.itcast_adm_personas| select| a.user_id,....| left join gdm.itcast_gdm_user_buy_category c on a.user_idc.user_id| left join gdm.itcast_gdm_user_visit d on a.user_idd.user_id; sql: String lazy5. 标识符 5.1 概述 实际开发中, 我们会编写大量的代码, 这些代码中肯定会有变量, 方法, 类等. 那它们该如何命名呢? 这就需要用到标识符了. 标识符就是用来给变量, 方法, 类等起名字的. Scala中的标识符和Java中的标识符非常相似. 5.2 命名规则 必须由大小写英文字母, 数字, 下划线_, 美元符\), 这四部分任意组合组成.数字不能开头.不能和Scala中的关键字重名.最好做到见名知意. 5.3 命名规范 变量或方法: 从第二个单词开始, 每个单词的首字母都大写, 其他字母全部小写(小驼峰命名法). zhangSanAge, student_Country, getSum类或特质(Trait): 每个单词的首字母都大写, 其他所有字母全部小写(大驼峰命名法) Person, StudentDemo, OrderItems包: 全部小写, 一般是公司的域名反写, 多级包之间用.隔开. com.itheima.add, cn.itcast.update6. 数据类型 6.1 简述 数据类型是用来约束变量(常量)的取值范围的. Scala也是一门强类型语言, 它里边的数据类型绝大多数和Java一样.我们主要来学习 与Java不一样的一些用法scala中数据类型的继承体系 6.2 数据类型 基础类型类型说明Byte8位带符号整数Short16位带符号整数Int32位带符号整数Long64位带符号整数Char16位无符号Unicode字符StringChar类型的序列字符串Float32位单精度浮点数Double64位双精度浮点数Booleantrue或false 注意下 scala类型与Java的区别 [!NOTE] scala中所有的类型都使用大写字母开头整形使用Int而不是Integerscala中定义变量可以不写类型让scala编译器自动推断Scala中默认的整型是Int, 默认的浮点型是: Double 6.3 Scala类型层次结构 类型说明Any所有类型的父类它有两个子类AnyRef与AnyValAnyVal所有数值类型的父类AnyRef所有对象类型引用类型的父类Unit表示空Unit是AnyVal的子类它只有一个的实例{% em %}() {% endem %} 它类似于Java中的void但scala要比Java更加面向对象NullNull是AnyRef的子类也就是说它是所有引用类型的子类。它的实例是{% em %}null{% endem %} 可以将null赋值给任何对象类型Nothing所有类型的子类, 不能直接创建该类型实例某个方法抛出异常时返回的就是Nothing类型因为Nothing是所有类的子类那么它可以赋值为任何类型 6.4 思考题 以下代码是否有问题 val b:Int nullScala会解释报错 Null类型并不能转换为Int类型说明Null类型并不是Int类型的子类
- 类型转换
7.1 概述
当Scala程序在进行运算或者赋值动作时, 范围小的数据类型值会自动转换为范围大的数据类型值, 然后再进行计算.例如: 1 1.1的运算结果就是一个Double类型的2.1. 而有些时候, 我们会涉及到一些类似于四舍五入的动作, 要把一个小数转换成整数再来计算. 这些内容就是Scala中的类型转换. Scala中的类型转换分为值类型的类型转换和引用类型的类型转换, 这里我们先重点介绍:值类型的类型转换. 值类型的类型转换分为: 自动类型转换强制类型转换 7.2 自动类型转换 解释 范围小的数据类型值会自动转换为范围大的数据类型值, 这个动作就叫: 自动类型转换. 自动类型转换从小到大分别为:Byte, Short, Char - Int - Long - Float - Double 示例代码 val a:Int 3
val b:Double 3 2.21 //因为是int类型和double类型的值进行计算, 所以最终结果为: Double类型
val c:Byte a 1 //这样写会报错, 因为最终计算结果是Int类型的数据, 将其赋值Byte类型肯定不行.7.3 强制类型转换 解释 范围大的数据类型值通过一定的格式(强制转换函数)可以将其转换成范围小的数据类型值, 这个动作就叫: 强制类型转换. 注意: 使用强制类型转换的时候可能会造成精度缺失问题! 格式
val/var 变量名:数据类型 具体的值.toXxx //Xxx表示你要转换到的数据类型参考代码 val a:Double 5.21 val b:Int a.toInt7.4 值类型和String类型之间的相互转换 - 值类型的数据转换成String类型
格式一:
val/var 变量名:String 值类型数据 格式二:
val/var 变量名:String 值类型数据.toString示例
将Int, Double, Boolean类型的数据转换成其对应的字符串形式.
参考代码:
val a1:Int 10
val b1:Double 2.1
val c1:Boolean true//方式一: 通过和空字符串拼接的形式实现
val a2:String a1
val b2:String b1
val c2:String c1 //方式二: 通过toString函数实现 val a3:String a1.toString val b3:String b1.toString val c3:String c1.toString2. String类型的数据转换成其对应的值类型 格式: val/var 变量名:值类型 字符串值.toXxx //Xxx表示你要转换到的数据类型注意: String类型的数据转成Char类型的数据, 方式有点特殊, 并不是调用toChar, 而是toCharArray这点目前先了解即可, 后续我们详细解释 需求: 将字符串类型的整数, 浮点数, 布尔数据转成其对应的值类型数据. 参考代码: val s1:String 100 val s2:String 2.3 val s3:String false//将字符串类型的数据转成其对应的: Int类型 val a:Int s1.toInt //将字符串类型的数据转成其对应的: Double类型 val b:Double s2.toDouble //将字符串类型的数据转成其对应的: Boolean类型 val c:Boolean s3.toBoolean8. 键盘录入 8.1 概述 前边我们涉及到的数据, 都是我们写死的, 固定的数据, 这样做用户体验并不是特别好. 那如果这些数据是由用户录入, 然后我们通过代码接收, 就非常好玩儿了. 这就是接下来我们要学习的Scala中的键盘录入功能. 8.2 使用步骤 导包 格式: import scala.io.StdIn 通过StdIn.readXxx()来接收用户键盘录入的数据 接收字符串数据: StdIn.readLine() 接收整数数据: StdIn.readInt()
8.3 示例 提示用户录入字符串, 并接收打印. println(请录入一个字符串: ) val str StdIn.readLine() println(您录入的字符串内容为: str)提示用户录入整数, 并接收打印. println(请录入一个整数: ) val num StdIn.readInt() println(您录入的数字为: num)9. 案例: 打招呼 9.1 概述 聊了这么久, 赶紧来和小伙伴儿们来打个招呼吧. 需求: 提示用户录入他/她的姓名和年龄, 接收并打印. 9.2 具体步骤 提示用户录入姓名.接收用户录入的姓名.提示用户录入年龄.接收用户录入的年龄.将用户录入的数据(姓名和年龄)打印到控制台上. 9.3 参考代码 //1. 提示用户录入姓名. println(请录入您的姓名: ) //2. 接收用户录入的姓名. val name StdIn.readLine() //3. 提示用户录入年龄. println(请录入您的年龄: ) //4. 接收用户录入的年龄. val age StdIn.readInt() //5. 将用户录入的数据(姓名和年龄)打印到控制台上. println(s大家好, 我叫\({name}, 我今年\){age}岁了, 很高兴和大家一起学习Scala!) 为: str)提示用户录入整数, 并接收打印. println(请录入一个整数: ) val num StdIn.readInt() println(您录入的数字为: num)9. 案例: 打招呼 9.1 概述 聊了这么久, 赶紧来和小伙伴儿们来打个招呼吧. 需求: 提示用户录入他/她的姓名和年龄, 接收并打印. 9.2 具体步骤 提示用户录入姓名.接收用户录入的姓名.提示用户录入年龄.接收用户录入的年龄.将用户录入的数据(姓名和年龄)打印到控制台上. 9.3 参考代码 //1. 提示用户录入姓名. println(请录入您的姓名: ) //2. 接收用户录入的姓名. val name StdIn.readLine() //3. 提示用户录入年龄. println(请录入您的年龄: ) //4. 接收用户录入的年龄. val age StdIn.readInt() //5. 将用户录入的数据(姓名和年龄)打印到控制台上. println(s大家好, 我叫\({name}, 我今年\){age}岁了, 很高兴和大家一起学习Scala!)scala学习配套视频
- 上一篇: 做网站实现登陆功能flash网站素材下载
- 下一篇: 做网站使用什么语言写大学电子系的建设网站的方案
相关文章
-
做网站实现登陆功能flash网站素材下载
做网站实现登陆功能flash网站素材下载
- 技术栈
- 2026年03月19日
-
做网站时字幕怎么做什么软件可以制作网页封面
做网站时字幕怎么做什么软件可以制作网页封面
- 技术栈
- 2026年03月19日
-
做网站时怎样图片上传怎么才能让图片不变形有什么插件吗网站发展方向
做网站时怎样图片上传怎么才能让图片不变形有什么插件吗网站发展方向
- 技术栈
- 2026年03月19日
-
做网站使用什么语言写大学电子系的建设网站的方案
做网站使用什么语言写大学电子系的建设网站的方案
- 技术栈
- 2026年03月19日
-
做网站市场价格多少小说网站建设源码
做网站市场价格多少小说网站建设源码
- 技术栈
- 2026年03月19日
-
做网站视频背景免费图片编辑网站
做网站视频背景免费图片编辑网站
- 技术栈
- 2026年03月19日
