【Scala下Play框架学习笔记(Actions,Controllers and Results)】教程文章相关的互联网学习教程文章

scala学习笔记4--scala的函数一【代码】

默认值:def sayMyName(name : String = "Jack"){println(name) } 可变参数:def sumMoreParameters(elem : Int*) = {var sum = 0for(e <- elem){println(e)sum += e}sum } 下划线的使用:def add(a:Int,b:Int) = a+b def add2 = add(_:Int,2) 递归函数:需要显式的给予函数的返回类型def fac(n:Int):Int = if( n <= 0) 1 else n*fac(n-1) 函数柯里化:把这个参数一个个独立开来写,这就是柯里化def mulitply(x:Int)(y:Int) = x*yd...

Case class和Case object代码实战解析之Scala学习笔记-20

package com.leegh.pattern_match/** * @author Guohui Li */abstract class Personcase class Student(age: Int) extends Personcase class Worker(age: Int, salary: Double) extends Personcase object Shared extends Personobject case_class_object { def main(args: Array[String]): Unit = { def caseOps(person: Person) = person match { case Student(age) => println("I am " + age + "years od") ...

Scala学习笔记(二):运行脚本文件【代码】

在某个目录(如:F:\)下新建一个文本文件,命名为:hello.scala其内容为:println("Hello World!") 那么这个时候该怎么运行这个脚本文件呢? 通过Windows的命令行窗口进入到Scala的安装目录下的bin目录下输入“scala F:\hello.scala”,然后回车即可正确运行 请参考此文: scala在cmd模式下执行文件报<console>:1: error: ‘;‘ expected but ‘.‘ found. scalac C:\hello.scala 错误http://blog.csdn.net/wangmuming/article/det...

Scala2.11.7学习笔记(五)类和对象基础知识【代码】

特质 Scala的trait 和Java 的Interface相比,可以有方法的实现。Scala的Trait支持类和Singleton对象和多个Trait混合(使用来自这些Trait中的 方法,而不时不违反单一继承的原则)。 Scala为Singleton对象的main定义了一个App trait类型,因此上面的例子可以简化为:HelloWorld.scala object HelloWorld extends App { println("Hello World!"); } 这段代码就不能作为脚本运行,Scala的脚本要求代码最后以表达式结束。...

Scala下Play框架学习笔记(Actions,Controllers and Results)

Scala下Play框架的学习是一件辛苦的事情,因为该框架比较新,scala语言也较新,所以中文资料很少,经过同事推荐,去了如下英文网站看资料:https://www.playframework.com/documentation/2.5.x/ScalaHome虽然我的同事以在云中飞的速度学完了,但对我来说还是任重而道远。Action是什么?由于Scala和Play有关的API都在play.api下面,所以其实Action的过程是这样的:play.api.mvc.Action(play.api.mvc.Request=> play.api.mvc.Result)...

Scala 学习笔记之隐式参数和隐式转换并用【代码】

隐式转换条件:1. 当表达式类型与预期的类型不同时2.当对象访问一个不存在的成员时3.当对象调用某个方法,而该方法的参数声明与传入参数不相匹时。隐式转换搜索范围:1. 位于源火目标类型伴生对象中的隐式函数。2. 位于当前作用域可以以单个标识符指代的隐式函数。隐式参数条件:函数中参数带有implicit隐式参数搜索范围:在当前作用域所有可以用单个标识符指代的满足类型要求的val和def。与所要求类型相关联的类型的伴生对象。隐式...

Scala学习笔记(三)【图】

无参方法功能:将方法的定义转换为属性字段的定义;作用范围:方法中没有参数,并且方法仅能通过读取所包含的对象属性去访问可变状态,而不改变可变状态,就可使用无参方法;例子:abstract class Element{ def texts:String } class Sub1Element(text:String) extends Element{ val texts:String = text } object RunApplication{ def main(args:Array[String]){ var node:...

Scala学习笔记(3)-表达式归纳

语法:使用表达式定义值和变量 val <identifier>[:<type>]=<expression> 字面值类型 var <identifier>[:<type>]=<expression> 变量类型实例1:同一级定义类型scala> val x=5*20;val amount=x+10x: Int = 100amount: Int = 110块局部定义(建议采用)scala> val amount={val x=5*20;x+10}amount: Int = 110写法2:scala> val amount={ | val x=5*20 | x+10 | }amount: Int = 110 表达式嵌套:scala> {val a...

scala编程第17章学习笔记(4)——元组【代码】

元组可以把固定数量的条目组合在一起以便于作为整体传送。不像数组或列表,元组可以保存不同类型的对象。元组常用来返回方法的多个值。例如,下面的方法找到集合中的最长单词并返回它的索引:scala> def longestWord(words: Array[String]) = {| var word = words(0)| var idx = 0| for (i <- 1 until words.length)| if (words(i).length > word.length) {| word = words(i)| idx = i| }| (word, idx)| } longestWord: (words: Ar...

Scala学习笔记一之基础语法,条件控制,循环控制,函数,数组,集合【代码】

前言:Scala的安装教程:http://www.cnblogs.com/biehongli/p/8065679.html1:Scala之基础语法学习笔记:1:声明val变量:可以使用val来声明变量,用来存放表达式的计算结果,但是常量声明后是无法改变它的值的,建议使用val来声明常量;声明var变量:如果要声明可以改变的引用,可以使用var变量,声明的常量的值可以改变。 3:指定类型:无论声明val变量还是声明var变量。都可以手动指定其类型,如果不指定,scala会自动根据值,进行类...

Scala学习笔记

1.在Scala中,变量或函数的类型总是写在变量或函数的名称的后面。 2.Scala并不区分基本类型和引用类型 3.定义常量用val,定义变量用var 通过val声明的只会生成getter,而var会生成setter,getter 4.java中的++ i和i ++在Scala里不起作用 5.参数化:在创建实例的同时就完成对它的“设置” 6.a*b:左操作数是方法的调用者,可以写成a.*(b) 但1:: twoThree,:: 方法的调用者是twoThree,1是方法的传入参数,可以写成twoThree.::(1) (以...

Scala学习笔记

参考这篇文章:http://www.ibm.com/developerworks/cn/java/j-lo-funinscala1/这也是一个系列 严格意义上的编程范式分为:命令式编程(Imperative Programming)、函数式编程(Functional Programming)和逻辑式编程(Logic Programming)原文:http://www.cnblogs.com/charlesblc/p/6110484.html

Scala学习笔记7 (actor)【代码】【图】

7. actorhttp://www.scala-lang.org/docu/files/actors-api/actors_api_guide.html# Scala中处理并发,有很多选择:l actor消息模型,类似Erlang,首选,Lift和akka也实现了自己的actor模型。l Thread、Runnablel java.util.concurenntl 3rd并发框架如Netty,Mina7.1. actor模型Java内置线程模型Scala actor模型“共享数据-锁”模型(share data and lock)share nothing每个object有一个monitor,监视多线程对共享数据的...

robot framework学习笔记之三—Scalar变量【图】

一、变量赋值 1)Set赋值 通常使用Set Variable关键字对变量进行赋值,其他Set相关的带Variable的关键字也可以进行赋值 赋值的时候,变量后面写不写『=』都可以,如下: 如果${vara}的值和abcd字符串相等,就赋值321给${varc};如果不相等则赋值678 2)Get赋值 主要用于返回值上,包括系统关键字的返回值和用户关键字的返回值,如下: 第一个例子是获取变量${vara}的长度,第二个例子是获取时间二、变...

Scala学习笔记【代码】【图】

scala笔记scala中object文件编译后对应java中的静态成员,非静态成员放在class文件中1、变量scala数据类型char的值var c1:Char = ‘a‘ + 1 //类型不匹配 var c2:Char = 97 + 1 //类型不匹配 var c3:Char = 98 //对 var c4:Char = 999 //超范围 //分析: //1.当把一个计算的结果复制给一个变量,编译器会进行类型转换和判断 //2.当把一个字面量赋给变量,编译器只会进行范围的判断 //3.(byte,short) 和 char之间不会自动转换 val...