// 2.1 条件表达式
val x = 2
val s = if (x > 0) 1 else -1
if (x > 0) "positive" else -1
// 返回值类型不一致,无法确定返回值的类型,所以返回Any类型 // 2.2 语句终止
var n = 2
var r = 0
if (n > 0) {r = r * n; n -= 1 }
if (n > 0) {
r = r * n
n -= 1
} // 2.3 块表达式和赋值
// 在scalak ,{}块包含一系列表达式,其结果也是一个表达式。块中最后一个表达式的值就是块的值
// 这个特性对于那种对某个val的初始化需要分多步完成的情况很有用
import scala.math.sqrt
val distance = { val dx = x - 1; val dy = x - 2;sqrt(dx * dx + dy * dy) } // 2.4 输入和输出
print("Answer: ") // 不换行
println(22) // 换行
println("Answer: "+ 22)
printf("Hello,%s! You are %d years old.\n","CC",1) // 格式化打印
val name = readLine("Your name: ")
print("Your age: ")
val age = readInt()
printf("Hello, %s! Next year, your will be %d.\n",name, age + 1) // 循环
while (n > 0) {
r = r * n
n -= 1
}
var result1 = 1
for ( i <- 1 to 22) {
result1 = result1 * i
}
val str1 = "Hello "
var sum = 0
for (i <- 0 until str1.length){
sum += str1(i)
}
var sum1 = 0
for(ch <- "Hello") {sum1 += ch} // 2.6 高级for循环和for推导式
for(i <- 1 to 3; j <- 1 to 3) {print((10 * i + j) + " ")}
for(i <- 1 to 3; j <- 1 to 3 if i != j){print((10 * i + j) + " ")}
for(i <- 1 to 10) yield i % 3 // Vector(1, 2, 0, 1, 2, 0, 1, 2, 0, 1)
for(c <- "Hello"; i <- 0 to 1) yield (c + i).toChar
for(i <- 0 to 1; c <- "Hello") yield (c + i).toChar // 2.7 函数
def abs(x: Double) = if(x >= 0) x else -x
def fac(n: Int) = {
var r = 1
for (i <- 1 to n) {
r = r * i
}
r
}

spark_20180328的更多相关文章

随机推荐

  1. codevs 3372 选学霸

    3372 选学霸  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 大师 Master 题目描述 Description 老师想从N名学生中选M人当学霸,但有K对人实力相当,如果 ...

  2. 优化Java堆大小的5个技巧

    本文作者Pierre是一名有10多年经验的高级系统架构师,他的主要专业领域是Java EE.中间件和JVM技术.根据他多年的工作实践经验,他发现许多性能问题都是由Java堆容量不足和调优引起的.下面他 ...

  3. 二叉搜索树的结构(30 分) PTA 模拟+字符串处理 二叉搜索树的节点插入和非递归遍历

    二叉搜索树的结构(30 分) 二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值:若它的右子树不空,则右子树上所有结点的值均大于它的根 ...

  4. Python-通过调用Nmap来进行端口扫描

    首先要安装python-nmap库,还要安装配置好nmap 实验机器IP:192.168.220.139 端口开放情况 代码 # -*- coding:utf-8 -*- __author__ = & ...

  5. HTML表格中<td scope="col">与<td scope="row">的含义

    HTML表格中<td scope="col">与<td scope="row">的含义 表格中 <td scope="c ...

  6. 请问两个div之间的上下距离怎么设置

    转自:https://zhidao.baidu.com/question/344630087.html 楼上说的是一种方法,yanzilisan183 <div style="marg ...

  7. DevExpress 柱状图

    通过构造函数,把值传递过来 public XtraInterpreterChartForm(object ds) { InitializeComponent(); datasource = ds; } ...

  8. 【254】◀▶IEW-Unit19

    Unit 19 Technology Communication I.名词性从句在雅思写作中的运用 英语中哪些位置可以放名词? 1)主语 2)宾语 3)表语 4)同位语 名词的位置放一个句子=名词性从 ...

  9. 10个C语言经典

    1.计算Fibonacci数列Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1.1.2.3.5.8.13.21.C语言实现的代码如下: /* t3ing Fibonac ...

  10. Windchill 基本业务对象

    容器容器是Windchill对象存放的地方:在Windchill中主要的容器有站点.组织.产品.存储库.项目.在Windchill中所有容器对象的父类为wt.inf.container.WTConta ...