scala 样例类(case class) + 模式匹配代码示例
package com.zxl/*** @description:* @author: zhangxueliang* @create: 2021-04-28 16:54* @version: 1.0**/
object TestScala {def main(args: Array[String]): Unit = {CaseClassDemo}def CaseClassDemo(): Unit ={//该案例的作用就是体验使用样例类方式进行对象匹配简洁性for (amt <- Array(Dollar2(1000.0), Currency2(1000.0, "RMB"), NoAmount2)) {val result = amt match {//说明case Dollar2(v) => "$" + v // $1000.0//说明case Currency2(v, u) => v + " " + u // 1000.0 RMBcase NoAmount2 => "" // ""}println(amt + ": " + result)}}}
abstract class Amount2
case class Dollar2(value: Double) extends Amount2 //样例类
case class Currency2(value: Double, unit: String) extends Amount2 //样例类
case object NoAmount2 extends Amount2 //样例类
scala 样例类(case class) + 模式匹配代码示例相关推荐
- Scala _09样例类(case classes)隐式转换
样例类(case classes) 概念理解 使用了case关键字的类定义就是样例类(case classes),样例类是种特殊的类.实现了类构造参数的getter方法(构造参数默认被声明为val), ...
- Scala样例类(case class)
一.简介 case class是一种可以用来快速保存数据的类,可以认为是java中的pojo类,用于对象数据的保存.它自己已经帮助我们实现了以下方法 apply(所以不需要new) toString ...
- Scala样例类及密封类
密封类
- Scala模式匹配--样例类--密封样例类--偏函数
Scala模式匹配--样例类--密封样例类--偏函数 模式匹配 等价于java的switch caseval c = '+'c match{case '+' => println(111)cas ...
- 《快学Scala》第14章——模式匹配和样例类 学习笔记
Scala有一个十分强大的模式匹配机制,可以应用在很多场合:switch语句.类型查询,以及"析构"(获取复杂表达式中的不同部分).除此之外,Scala还提供了样例类,对模式匹配进 ...
- Scala学习笔记(三)——面向对象、类、抽象类、伴生、内部类、样例类、枚举、泛型类、类型边界、型变、特质、动态混入、包
Scala面向对象 Scala面向对象 一.基本概念 1.类的概念 2.类成员访问修饰符 二.类 1.类的定义 2.类的继承 3.抽象类 4.单例对象 5.伴生 6.内部类 7.样例类 8.枚举 9. ...
- 14 模式匹配和样例类
文章目录 模式匹配 守卫 变量模式 类型模式 匹配数组.列表和元组 提取器 变量声明中的模式 for表达式的模式 样例类 copy方法和带名参数 case语句的中置表示法 匹配嵌套结构 密封类 偏函数 ...
- 2021年大数据常用语言Scala(三十二):scala高级用法 样例类
目录 样例类 定义样例类 样例类方法 样例对象 样例类 样例类是一种特殊类,它可以用来快速定义一个用于保存数据的类(类似于Java POJO类),而且它会自动生成apply方法,允许我们快速地创建样例 ...
- Scala-Unit6-final/type关键字、样例类样例对象
一.关键字 1.final关键字 用final修饰的类:不能被继承 用final修饰的方法:不能被重写 注意:(1)在Scala中变量不需要用final修饰,因为val与var已经限制了变量是否可变 ...
最新文章
- 手把手实现YOLOv3(一)
- 50道练习带你玩转Pandas
- C++ STL容器值set
- 语言与golang语言运行速度_Golang语言情怀第13期 Go 语言设计模式 介绍
- oracle数据集成产品,甲骨文推出Oracle数据集成产品
- eclipse java 注释_Eclipse Java注释模板设置详解
- Android Fragment 使用详解
- 吴恩达新书手稿完工,现在开放免费下载 | 资源
- Louvain 算法的核心思路以及数据结构(最完善版)
- 【回归预测-ELM预测】基于樽海鞘算法结合极限学习机实现风电场功率回归预测附matlab代码
- ImageJ Merge荧光图片
- android模拟器 不能启动不了,Android模拟器启动不了解决办法
- R语言 判别分析:线性判别、K最邻近、有权重的K最邻近、朴素贝叶斯
- 冬瓜哥的PC机上唯独它9年没换!
- 搬运小视频为什么要修改MD5值?什么是MD5?
- C语言经典面试题及面试宝典
- WebRTC开发之webrtc/depot_tools/gn: line 8: exec: python: not found
- 凡科虚拟服务器怎样做301,虚拟主机如何做301重定向
- 背后的力量 | 搭建新型IT基础架构 华云数据助力妇幼保健院提升数字化医院建设水平
- LTE学习-RACH(1)
热门文章
- mxnet基础到提高(49)-使用免费的云jupyter
- ​【Python】Python中好用的命令行参数解析模块
- 科普:算法岗是什么?我适不适合算法岗?选什么方向的算法岗?
- 【Python基础】当变量有值时,为什么会出现UnboundLocalError?
- 【CV】图像分割2020,架构,损失函数,数据集,框架的整理和总结
- BERT源码分析(PART II)
- JDK1.8源码(二)——java.lang.Integer 类
- 达索系统“体验时代中的制造业”大型活动探索工业数字化转型
- 用SQL语言建表,课1
- [CareerCup] 16.2 Measure Time in a Context Switch 测量上下文转换的时间