scala
为不为
这个作者很懒,什么都没留下…
展开
-
scala map,flatmap,filter的用法
例子:object test extends App { val fruits = Seq("apple", "banana", "orange") println(fruits.map(_.toUpperCase)) println(fruits.flatMap(_.toUpperCase))}输出:List(APPLE, BANANA, ORANGE)List(原创 2018-01-11 16:24:22 · 1964 阅读 · 0 评论 -
scala akka actor的入门(1)
例子//#full-exampleimport akka.actor.{Actor, ActorRef, ActorSystem, Props}//#greeter-companion//#greeter-messagesobject Greeter { //#greeter-messages def props(message: String, printerActor:原创 2018-01-10 15:17:35 · 1420 阅读 · 0 评论 -
用idea 的sbt 搭建一个akka项目
1.新建scala项目(选sbt) 2. scalaVersion 写你的scala版本name := "akkatest"version := "1.0"scalaVersion := "2.10.6"// https://mvnrepository.com/artifact/com.typesafe.akka/akka-actorlibraryDependencies +原创 2018-01-10 11:12:27 · 1155 阅读 · 0 评论 -
scala 隐式参数
scala隐式参数:当参数没填时,scala自动根据类型补充参数abstract class SemiGroup[A] { def add(x: A, y: A): A}abstract class Monoid[A] extends SemiGroup[A] { def unit: A}object test extends App { implicit object原创 2018-01-09 08:48:33 · 187 阅读 · 0 评论 -
scala协变逆变
abstract class Animal{ val name: String}case class Dog(name:String) extends Animalcase class Cat(name:String) extends Animalabstract class Printer[-A]{ def print(list:List[A]):Unit}class Do原创 2018-01-08 15:42:51 · 222 阅读 · 0 评论 -
scala定义栈
class Stack[T]{ private var elements:List[T]=Nil def push(element:T){elements= element::elements} def peek{elements.head} def pop(): T ={ val current=elements.head elements=elements.ta原创 2018-01-08 14:12:37 · 590 阅读 · 0 评论 -
scala for yield 的用法
case class User(name:String,age:Int,sex:String)object test{ def foo(n:Int,v:Int)={ for(i0 until n; jif i+j==v) print(s"($i, $j)") } def main(args: Array[String]): Unit = {原创 2018-01-08 13:48:11 · 532 阅读 · 0 评论 -
scala apply unapply 的用法
object test{ def apply(name:String): String ={ s"$name--${Random.nextLong}" } def unapply(arg: String): Option[String] = { val name=arg.split("--").head if(name.nonEmpty) Some(name)原创 2018-01-08 13:15:58 · 324 阅读 · 0 评论 -
scala 模式匹配
sealed abstract class Pay{}case class AliPay(user:String,money:Double)extends Paycase class Wechat(user:String,money:Double)extends Paycase class Other(user:String,money:Double)extends Payclass t原创 2018-01-08 10:44:39 · 159 阅读 · 0 评论 -
scala基本语法->高阶函数、闭包、柯里化
高阶函数object test { def main(args: Array[String]): Unit = { function1((x:Int)=>x+"test") } def function1(x:Int=>String): Unit ={ //该函数的参数是一个函数(输入参数是int,返回值时string) print(x原创 2018-01-06 11:05:22 · 330 阅读 · 0 评论 -
scala中Mixin类组合,了解object,trait,class,abstract class
abstract class AbstractPerson{ val name:String}class TestPerson extends AbstractPerson{ val name="gmy"}trait traitPerson extends AbstractPerson{ def bigName=name.toUpperCase}class test ext原创 2018-01-08 10:04:51 · 362 阅读 · 0 评论 -
scala中list,map,option的使用
def main(args: Array[String]): Unit = { //scala列表值时不可变的 主要掌握 ::,Nil,:::,tabulate,fill,foreach的使用 val numlists:List[Int]=List(1,2,3,4) //也可以通过下面创建一个一样的,但功能更强 val numlists1:List[Int]=L原创 2018-01-08 09:20:52 · 2031 阅读 · 0 评论 -
Lagom 微服务入门(1)
Service Descriptorsnamed("hello").withCalls( namedCall("hello", sayHello))用/hello 调用了sayHello方法def getOrder(orderId: Long): ServiceCall[NotUsed, Order]override def descriptor = { im原创 2018-01-12 13:44:39 · 470 阅读 · 0 评论 -
Lagom 微服务入门
1.Lagom 中文意思是恰到好处的意思 2.它是lightbend体系下的微服务架构例子1.在 cmd 命令行中输入,一直按enter sbt new https://github.com/lagom/lagom-scala.g8 2.在当前目录下会创建hello的工程 3.进入该工程 cd hello 4.先 输入sbt ,等编译完后,再输入原创 2018-01-12 13:17:03 · 1200 阅读 · 0 评论 -
scala play 框架(1)
1从配置文件里读取数据. //foo="test" config.getString("foo") //boo= ["bar", "baz"] config.getStringSeq("boo")2.action def echo = Action { request => Ok("Got request [" + request + "原创 2018-01-12 10:11:08 · 461 阅读 · 0 评论 -
scala play框架的idea 实现
1.首先在windows下安装了sbt 2.在github上下载第一个例子:https://github.com/playframework/play-java-starter-example/tree/2.5.x 3.打开idea open这个项目 4.在terminal命令行中输入sbt run 5.再在网页中查看原创 2018-01-12 09:13:10 · 596 阅读 · 0 评论 -
scala akka actor的入门(2)-actor的结构
1.一个actor 总有一个父节点 system.actorOf() 创建是系统actor的子actor context.actorOf() 创建是该actor的子actor 2.import akka.actor.{Actor, ActorSystem, Props}class PrintMyActorRefActor extends Actor {原创 2018-01-10 16:12:59 · 535 阅读 · 0 评论