SCALA常规练习A
package com.hengheng.scala
import scala.util.control.Breaks._
import scala.util.Random
object Application{
def main(args : Array[String]) {
println("Hello, World!")
println(addSayHelloFirst(5, 10))
val I = List(1, 2, 3)
I.map((i) => {
println("HI")
println(i + 9)
})
}
def addSayHelloFirst(i : Int, j : Int) : Int = {
println("Hello")
i + j
}
def add(i : Int, j : Int) = i + j
val add2 = add(2, _ : Int)
println(add2(99))
def devide(i : Int)(j : Int) : Int = i / j
val devideBy2 = devide(_ : Int)(2)
println(devideBy2(100))
var _100Devide = devide(100)(_ : Int)
println(_100Devide(10))
var k = 5
if(k > 10) {
println("k is more than 10.")
}
else if(k < 0) {
println("k is less than 0")
}
else {
println("k is between 1 and 10")
}
var i = 0
var sum = 0
while(i < 10) {
sum += i
i += 1
}
println(sum)
sum = 0
for (i <- 1 to 9) {
sum += i
}
println(sum)
breakable {
while(true) {
val r = new Random()
val i = r.nextInt(10)
println("i == " +i)
if(i == 5) {
break
}
}
}
}
输出:
101
50
10
k is between 1 and 10
45
45
i == 9
i == 0
i == 4
i == 9
i == 3
i == 1
i == 2
i == 1
i == 3
i == 5
Hello, World!
Hello
15
HI
10
HI
11
HI
12
SCALA常规练习A的更多相关文章
- SCALA常规练习C
package com.hengheng.scala abstract class Animal { def walk(speed : Int) def breathe() = { println(& ...
- SCALA常规练习B
package com.hengheng.scala class Point(val x : Int, val y : Int) { val isOriginal : Boolean = { x == ...
- 【Todo】【读书笔记】大数据Spark企业级实战版 & Scala学习
下了这本<大数据Spark企业级实战版>, 另外还有一本<Spark大数据处理:技术.应用与性能优化(全)> 先看前一篇. 根据书里的前言里面,对于阅读顺序的建议.先看最后的S ...
- scala学习笔记2
一.算术和操作符重载 a + b 是如下方法的简写: a.+(b) 在scala中你可以使用任何符号来为方法命名.比如BigInt类就定义了一个/%的方法,该方法返回一个对偶,对偶的内容是除法操作得到 ...
- scala学习笔记1
一.REPL scala解释器读到一个表达式,对它进行求值,将它的打印出来,接着再继续读下一个表达式.这个过程被称作 读取-打印-循环,即REPL. 从技术上讲,scala程序并不是一个解释器.实际发 ...
- [翻译]The Neophyte's Guide to Scala Part 12: Type Classes
The Neophyte's Guide to Scala Part 12: Type Classes 过去的两周我们讨论了一些使我们保持DRY和灵活性的函数式编程技术,特别是函数组合,partial ...
- Scala并发编程
Scala的actor提供了一种基于事件的轻量级线程.只要使用scala.actors.Actor伴生对象的actor方法,就可以创建一个actor.它接受一个函数值/闭包做参数,一创建好就开始运行. ...
- 【Scala】Scala之Classes and Properties
一.前言 前面学习了控制结构,下面学习Scala的Class和Properties. 二.Class&Properties 尽管Scala和Java很类似,但是对类的定义.类构造函数.字段可见 ...
- scala 随笔
创建map,并向map添加元素 val idMap = Map( "group_id" -> "GID", "sim_id" -> ...
随机推荐
- HighCharts 具体使用及API文档说明
一.HighCharts开发说明: HighCharts开发实际上配置HighCharts每一个部分,比方配置标题(title),副标题(subtitle)等,当中每一个部分又有更细的參数配置,比方标 ...
- [置顶] android 自定义ListView实现动画特效
通过自定义ListView实现动画特效,被点击元素A向前移,A之前元素往后移动. 重点在于动画的实现: 具体代码如下: package com.open.widget; import java.uti ...
- Quartz contention when running in load balanced environment--reference
1.8.3 appears to have addressed this issue with a single application server. However, we're seeing t ...
- Android(java)学习笔记238:多媒体之图片画画板案例
1.首先我们编写布局文件activity_main.xml如下: <RelativeLayout xmlns:android="http://schemas.android.com/a ...
- 关于 yii 验证码显示, 但点击不能刷新的处理
先说说 render 与 renderPartial, 各位看官, 先别走, 我没跑题, 这个问题如果需要解决, 关键就在 render 与 renderPartial 的区别. renderPart ...
- Linux read/write fread/fwrite两者区别
Linux read/write fread/fwrite两者区别 1,fread是带缓冲的,read不带缓冲. 2,fopen是标准c里定义的,open是POSIX中定义的. 3,fread可以读一 ...
- AlertDialog dismiss 和 cancel方法的区别
AlertDialog使用很方便,但是有一个问题就是:dismiss方法和cancel方法到底有什么不同? AlertDialog继承与Dialog,现在各位看看结构图: 然后在Dialog类中找到了 ...
- codevs4189字典(字典树)
/* 本字典树较弱 只支持插入单词 查询单词. 特殊的 bool变量w 标记此字母是不是某个单词的结束 (然而这个题并没卵用) */ #include<iostream> #include ...
- 转载:C#中事件和委托的编译代码
接上文转载:C#中事件的由来,这时候,我们注释掉编译错误的行,然后重新进行编译,再借助Reflactor来对 event的声明语句做一探究,看看为什么会发生这样的错误: public event Gr ...
- matlab中的三维坐标系与旋转
1. matlab中的三维坐标系 matlab中的三维坐标系是使用的右手坐标系: 输入以下代码: >> plot3(0,0,0) >> xlabel('axis X') > ...