随笔分类 -  scala

摘要:简介 scala.sys.process提供了shell的和系统交互的DSL,包括执行命令, 逻辑操作, 重定向, 管道等操作。 启动流程要执行与ProcessBuilder关联的所有外部命令,scala.sys.process提供了四组方法中。 这些方法中的每一种都具有各种过载和变化,以实现对I/ 阅读全文
posted @ 2019-09-07 22:04 吊车尾88 阅读(2434) 评论(0) 推荐(0)
摘要:当我们定义一个协变类型List[A+]时,List[Child]可以是List[Parent]的子类型。 当我们定义一个逆变类型List[-A]时,List[Child]可以是List[Parent]的父类型。 Scala的协变 看下面的例子: c不能赋值给c2,因为Covariant定义成不变类型 阅读全文
posted @ 2019-03-30 19:41 吊车尾88 阅读(200) 评论(0) 推荐(0)
摘要:scala中“=>”的4种使用场景 1. 表示函数的返回类型(Function Type) 函数double的类型就是 (x: Int) => Int 或者 Int => Int。左边是参数类型,右边是方法返回值类型。备注: 当函数只有一个参数的时候,函数类型里面括起来函数参数的括号是可以省略的。 阅读全文
posted @ 2019-03-26 14:12 吊车尾88 阅读(606) 评论(0) 推荐(0)
摘要:Function一个可以进行高阶函数式编程的模块。 chain def chain[a](fs: Seq[(a) ? a]): (a) ? a 把一些列的方法串起来,挨个执行,每个方法的结果,回作为下一个方法的入参 const def const[T, U](x: T)(y: U): T 这是一个返 阅读全文
posted @ 2019-02-28 09:58 吊车尾88 阅读(392) 评论(0) 推荐(0)
摘要:闭包的实质就是代码与用到的非局部变量的混合,即: 闭包 = 代码 + 用到的非局部变量 实例1: 匿名函数中引入闭包 在 multiplier 中有两个变量:i 和 factor。其中的一个 i 是函数的形式参数,在 multiplier 函数被调用时,i 被赋予一个新的值。然而,factor不是形 阅读全文
posted @ 2019-01-31 09:48 吊车尾88 阅读(832) 评论(0) 推荐(0)
摘要:Scala 允许你指明函数的最后一个参数可以是重复的。这可以允许客户向函数传入可变长度参数列表。想要标注一个重复参数,在参数的类型之后放一个星号。 例如:定义一个可变参数的函数param 这样定义, echo 可以被零个至多个 String 参数调用: 函数内部,重复参数的类型是声明参数类型的数组。 阅读全文
posted @ 2019-01-22 12:00 吊车尾88 阅读(367) 评论(0) 推荐(0)
摘要:模式匹配的类型 包括: 常量模式 变量模式 构造器模式 序列模式 元组模式 变量绑定模式等。 常量模式匹配 常量模式匹配,就是在模式匹配中匹配常量 变量匹配 变量匹配,匹的是case语句后面接的是scala变量,如case x if(x == 5) => x等,在使用时一般会加守卫条件,当然也可以像 阅读全文
posted @ 2019-01-16 10:08 吊车尾88 阅读(1544) 评论(0) 推荐(0)