
scala
实战
大树1993
这个作者很懒,什么都没留下…
展开
-
scala学习(六)—高级部分之隐式转换,模式匹配,泛型
1.隐式转换 隐式转换函数 //隐式转换,是根据源类型与目标类型匹配函数,因此与函数名无关implicit val str2Int: String => Int = (str: String) => str.toInt隐式类:即富包装类//必须有一个参数:且只能有一个参数,代表源类型implicit class RichString(str: String) { def desc(): Unit = println(s"这是一个长度为:${str.length}.原创 2020-12-20 23:12:52 · 228 阅读 · 0 评论 -
scala学习(五)—函数
1.函数闭包(一个返回值依赖于外部变量的函数,在函数执行时暂时处于一个封闭状态)//函数的变量只有i,返回值需要捕获函数外部的自由变量factorval factor = 3val multiplier = (i:Int) => i * factor柯里化(原来接受两个或多个参数的函数,改为先接受一个参数并返回一个新的函数,新的再接受第二个参数返回最终结果)//一般写法,同时接收两个参数def add_1(x: Int, y: Int) = x + y//先接收x参数,返回一个原创 2020-12-20 22:56:25 · 115 阅读 · 0 评论 -
scala学习(四)—面向对象详解
官网1.创建实例类 创建class class Employ { val DESC: String = "Hello" var name: String = _ var age: Int = _ // 重写equals override def equals(other: Any): Boolean = other match { case that: Employ => this.name == tha原创 2020-12-20 22:24:41 · 204 阅读 · 0 评论 -
Scala学习(三)—集合篇
1.集合概览Scala集合分为可变集合和不可变集合 scala.collection包下的抽象scala.collection.immutable包下的不可变集合scala.collection.mutable包下的可变集合2.集合父类的一些通用方法原创 2020-12-20 22:04:59 · 217 阅读 · 0 评论 -
scala学习(二)—基础部分详解
1.IO操作(更丰富的操作使用JavaIO)//控制台读取数据import scala.io.StdInval str = StdIn.readLine("输入数据: ")println(str)//读文件import scala.io.Sourceval file = "D:/data/spark/core/wc.txt"val source = Source.fromFile(file) //读取文件source.getLines().foreach(println) //逐行读取原创 2020-12-20 21:50:18 · 177 阅读 · 0 评论 -
scala学习(一)—基础部分详解
1.数据类型 Any:所有类的超类 AnyVal:所有值类型父类,是Any的子类 AnyRef:所有引用类型的父类,是Any的子类 Null:所有AnyRef的子类 Nothing:所有类的子类,多用于抛出异常 Unit:无值,类似java的void Byte/Short/Int/Long/Float/Double/Char/String/Boolean/String:在scala中每种类型都是类都可直接操作 2.声明变量...原创 2020-09-11 21:47:13 · 162 阅读 · 0 评论 -
scala—环境准备
一、命令行方式下载scala包:https://www.scala-lang.org/download/ 安装 配置环境变量 输入scala 二、继承插件利用idea开发安装scala插件(可在线和离线安装):file —> settings —> plugins 添加sdk: file —> project structure(scalaSDK即为scala的安装包,可在线和离线安装) ...原创 2020-09-11 21:02:25 · 116 阅读 · 0 评论