曹洁 Spark编程Scala版本课后习题答案
第二章课后习题
2-1
选D
D项错在元组可以定义多个元素,通过(x,x,x,…)

2-2
选A
A错在 元组的访问方式是 x._1来访问元组中的第一个元素。注意是从下标1开始的,数组是从下标0开始的。
2-3
这里的意思应该是说用var和val的区别:
val声明一个变量时,必须赋初始值,并且后续操作不能修改其值。而var声明的变量可以重复使用,任意修改,并且以最后一次修改的值为准。

如上,不初始化报错;

如上,初始化后修改值报错。
关于书上讲到的var声明变量可以不初始化,我试验是错的。
![> [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TQWHxGTG-1656343499271)(C:/Users/dell/AppData/Roaming/Typora/typora-user-images/image-20220622191305135.png)]](https://img-blog.csdnimg.cn/d3c77fba2b16422ab27852f3f97581c3.png)
2-4
val nums = List(1,7,9,8,0,3,5,4,6,2)
val res = nums.map(x => x*10)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MfkSPyq1-1656343499271)(C:/Users/dell/AppData/Roaming/Typora/typora-user-images/image-20220623212207212.png)]](https://img-blog.csdnimg.cn/717f038df8b4476b844a8b82139a6810.png)
2-5
def judge(num:Int) ={ if (num > 0 ) 1 else if(num < 0 ) -1 else 0 }
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ewJ8L5xn-1656343499272)(C:/Users/dell/AppData/Roaming/Typora/typora-user-images/image-20220622172638492.png)]](https://img-blog.csdnimg.cn/f350379ebe9146e38f2d7f670d5f9d9b.png)
2-6
for(num <-100 until 1000){ val a = num /100;val b = num /10 %10;val c = num % 10; val temp = a*a*a + b*b*b + c*c*c; if(num == temp) printf(" %d",num)}
//153 370 371 407
2-7
class vectorfunc(a:Int,b:Int,c:Int){var a1 = a;var b1 = b;var c1 = c; def add(aa:Int,bb:Int,cc:Int) ={a1 += aa; b1 += bb; c1 += ccprintf("(%d,",a1);printf("%d,",b1);printf("%d)",c1)}
}
new vectorfunc(1,2,3).add(4,5,6)
//减法类似
//标量乘法我理解为一个数乘以向量的每一个数,实现过程类似
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wCvSzeiM-1656343499272)(C:/Users/dell/AppData/Roaming/Typora/typora-user-images/image-20220622184805945.png)]](https://img-blog.csdnimg.cn/df0c71853aa340e78b8c85a4bbb9767e.png)
2-8
val s = "Hello"
var res:Long = 1;
for(i <- s){ res = res * i.toLong}//toLong是转化为Long类型
print(res) //这里是写死的。可以定义函数传参,如下:def sum(s:String) = {var res:Long = 1;for( i <- s)res = res*i.toLongprint(res)
}
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2nj3iQrv-1656343499272)(C:/Users/dell/AppData/Roaming/Typora/typora-user-images/image-20220622190344437.png)]](https://img-blog.csdnimg.cn/5adefa82ebd64a2ab9bc4adf4f143cb9.png)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
