快学scala第二章习题答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 控制结构和函数
2.1 一个数字如果为正数,则它的signum为1;如果是负数,则signum 为-1;如果为0,则signum为0.编写一个函数来计算这个值简单的逻辑判断
可以看出,它的值是()类型是Unit
2.2 指出在Scala中何种情况下赋值语句x=y=1是合法的。(提示:给x找个合适的类型定义)
题目已经给了明确的提示了。本章节中已经说过了,在scala中的赋值语句是Unit类型。所以只要x为Unit类型就可以了。
这也再次证明了{}是Unit类型
2.4 针对下列Java循环编写一个Scala版本:for(int
i=10;i>=0;i–)System.out.println(i);
使用Scala版本改写就OK了
2.6 编写一个for循环,计算字符串中所有字母的Unicode代码的乘积。举例来说,"Hello"中所有字符串的乘积为9415087488L
2.10 编写函数计算x n,其中n是整数,使用如下的递归定义:
∙x n=y2,如果n是正偶数的话,这里的y=x(n/2)∙x n = x*x(n-1),如果n是正奇数的话
∙x0 = 1
∙x n = 1/x(-n),如果n是负数的话