scala
悟初境
What I cannot create, I do not understand.
展开
-
scala面向对象总结
scala面向对象总结。 Java是面向对象语言,但存在着非面向对象内容:基本类型、null,静态方法等; scala是天生面向对象语言,一切皆对象 语法总结: scala类默认是public的,不必声明 一个源文件可以有多个类的声明 类的修饰符 查看简单示例: object Demo01 { def main(args: Array[String]): Unit = { var p1 = new Person p1.name = "jimo" p1.age = 18原创 2020-07-29 07:23:50 · 889 阅读 · 0 评论 -
scala高级函数
scala函数(高级)总结 作为参数的函数 def plus(x: Int): Int = x + 1 println(Array(1, 2, 3, 4).map(plus).mkString(",")) // 2,3,4,5 偏函数 给定一个列表 List(1,2,3,"abc"), 返回所有数字+1,且过滤掉非数字。 方法一:模式匹配,不够优美 val list = List(1, 2, 3, "abc") // 模式匹配方式 val list1 = list.map { case x: In原创 2020-07-28 07:34:00 · 353 阅读 · 0 评论 -
scala模式匹配
scala模式匹配总结。 基本介绍 scala中的match是强大版switch语句。 入门案例: val op = "*" val n1 = 10 val n2 = 20 val res = op match { case "+" => n1 + n2 case "-" => n1 - n2 case "*" => n1 * n2 case "/" => n1 / n2 case _ =&原创 2020-07-27 08:16:36 · 187 阅读 · 0 评论 -
scala隐式转换
隐式转换笔记 问题 val num: Int = 3.5 // 转换出错 如何使用隐式转换实现? 定义 是以 implicit 关键字声明的带有单个参数的函数,这种函数会自动应用,将值从一种类型转为另一种类型。 implicit def doubleToInt(d: Double): Int = { d.toInt } val num: Int = 3.5 // 转换ok 原理: private final int doubleToInt$1(double d) { return (i原创 2020-07-08 07:16:20 · 201 阅读 · 0 评论 -
scala惰性函数
scala惰性函数 原生支持惰性,懒加载。 回复java的懒加载 /** * Java懒加载 */ public class LayLoad { private String prop; public String getProp() { if (prop == null) { prop = initProp(); } return prop; } private String initProp原创 2020-06-14 11:51:11 · 241 阅读 · 0 评论