前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Scala入门必刷的100道练习题(附答案)

Scala入门必刷的100道练习题(附答案)

作者头像
Maynor
发布2023-03-16 13:48:03
2.5K0
发布2023-03-16 13:48:03
举报

## set集合(1-10)

1、定义一个不可变set集合a,保存以下元素:10,20,30,10,50,40

2、获取a集合的大小

3、遍历a集合

4、a集合删除元素50

5、a集合拼接set集合Set(60,80,90)

6、a集合拼接列表List(100,300,200)

7、定义一个可变set集合b,初始元素为:5,6,7,8

8、b集合中使用+=添加元素9

9、b集合中删除元素5

10、b集合使用add添加元素10

## Map映射(11-20)

11、构建一个映射map1,内容为"zhangsan" -> 20, "lisi" -> 18, "wangwu" -> "22"

12、构建一个映射map2,内容为"zhangsan" -> 20, "lisi" -> 18, "wangwu" -> "22"

13、构建一个空的映射map3,参数类型为Map[String, Int]

14、获取map2中的lisi的年龄

15、获取所有的map2中的key值 

16、获取所有的map2中的value值 

17、map2中新增一组数据:zhaoliu,25

18、map2中获取zhaoliu的年龄,如果zhaoliu不存在,则返回-1

19、map2中遍历打印所有的key和value

20、在map2中添加map1集合

方法(21-30)

以下10道题目需要倒入两个包

import scala.io.StdIn

import scala.util.control.Breaks

21. 编写一个方法method1,输入分数之后能够打印出不及格(小于60分)、及格(60-80)、良好(80-90)、优秀(大于90)

22. 编写一个方法method2,输入名字,判断该名字是否为laowang,如果是返回true,如果不是返回false(不使用return)

23. 编写一个方法method3,要求能够输入一个大于0的数字参数,能够打印1到该数字范围内的所有数。(2种方式)

24. 编写一个方法method4,要求能够输入一个大于0的数字参数,能够打印1到该数字范围内的所有偶数。

25. 编写一个方法method5,要求能够输入一个大于0的数字参数,能够打印1到该数字范围内的所有奇数,并且该奇数不能被5整除。

26. 编写一个方法method6,要求可以输入任意多个参数(数字类型),将每个参数乘以100后放入数组并返回该数组。

如:2, 4, 6 返回 Array(200, 400, 600)。

27. 编写一个方法method7,要求输入一个数字,如果数字大于150则抛出异常,并捕获该异常,捕获异常后打印The number is greater than 150。

提示:throw new Exception("The number is greater than 150")

28. 编写一个方法method8,要求传入两个参数,默认值分别为10,15,返回两个参数的乘积。

29. 定义一个名为method9的方法,有三个参数,前两个为数字类型,最后一个参数为f1函数(该函数类型参数接受两个数字类型参数,返回值也是数字类型),该method9方法返回值为数字类型。定义一个函数f1两个参数分别为x,y都为数字类型,执行返回结果是两个参数的和

30. 编写一个方法method10,要求有两个参数,两个参数都为大于0的数字,要求能够打印1到第一个参数数字范围内的所有数,在打印过程中遇到与第二个参数相乘大于200就停止。

数组(31-40)

31、定义一个数组arr1内容为1-10

32、使用filter过滤器,过滤出来偶数

33、使用map把arr1数组中每一个元素都取出来放到一个全新数组

34、使用foreach打印出arr1数组中的元素

35、翻转数组arr1 

36、修改数组arr1中下标为0的数据为100

37、删除arr1数组下标为0的数据

38、arr1数组从下标2开始,删除3个元素

39、插入数据到arr1数组, 第一个参数是开始的位置,插入50,66,77

40、对arr1数组进行降序排列

List列表(41-70)

41、定义一个列表list1,内容为("a", "b" ,"c","d","e")

42、在list1列表开头添加元素t

43、在列表开头添加指定列表List("m","n")的元素

44、在列表list1后添加元素1

45、将列表的所有元素添加到 StringBuilder

46、将列表的所有元素添加到 StringBuilder并指定分隔符为","

47、获取列表索引为0的元素

48、检测列表中是否包含指定的元素a

49、向list1列表中追加数据"a"

50、去除list1列表的重复元素,并返回新列表

51、list1丢弃前3个元素,并返回新列表

52、list1丢弃最后2个元素,并返回新列表

53、检测列表list1是否以指定a结尾

54、判断是否是以指定a开始的列表list1

55、获取list1列表的第一个元素

56、在list1中从指定位置 0 开始查找元素d第一次出现的位置

57、list1返回所有元素,除了最后一个

58、检测列表list1是否为空

59、返回list1列表最后一个元素

60、返回list1所有元素,除了第一个

61、提取列表list1的前2个元素

62、提取列表list1的后2个元素

63、列表list1转换为数组

64、list1转换为 Seq

65、list1转换为 Set

66、list1列表转换为字符串

67、list1列表反转

68、list1列表排序

69、检测list1列表在指定位置1处是否包含指定元素a

70、列表list1转换为数组

元组(71-76)

71 创建一个元组Y1,内部含有zhangsan   biejing   20  true  四个数据

72 获取元组Y1内的第二个元素(biejing)

现有数据如下图

姓名 zhangsan lisi wangwu zhaoliu

年龄 20 30 40 50

性别 1 0 1 0

73 创建一个元组Y2,内部含有(zhangsan ,lisi,wangwu,zhaoliu),(20,30,40,50),(1,0,1,0)  3个数据(每个内部依然是元组)。

74 获取zhangsan,并输出

75 获取lisi 的年龄,并输出

76 获取wangwu的性别,并输出

Iterator迭代器(77-86)

77、 定义一个迭代器iter1,数据为"Hadoop","Spark","Java"

78、遍历iter1,使用while循环并打印输出

79、定义一个迭代器iter2,数据为10,20,20,30,34,50,60

80、打印出iter2中的最大值

81、打印出iter2中的最小值

82、打印出iter2的长度

83、合并iter2和iter1两个迭代器

84、iter2丢弃前2个元素

85、检查iter2是否为空

86、iter2返回前 2个元素的新迭代器

87.变长数组的特点是什么?

88.创建没有初始元素的ArrayBuffer变长数组,语法结构是什么?

89.创建带有初始元素的ArrayBuffer的语法结构是什么?

90.在定义变长数组的时候需要导入哪个包?

91.定义变长数组的时候需要注意的点?

92.定义一个变长数组 a,数组类型为string,长度为0

93.向变长数组中添加元素spark

94.定义一个包含以下元素的变长数据,10,20,30,40,50

95.b数组删除元素50

96.在b数组后面追加一个数组Array(70)

97.使用for循环遍历b数组的内容并输出

98.使用for循环遍历b数组的索引下标,并打印元素

99.在scala中数组常用方法有哪些?

100.定义一个数组,包含以下几个元素(10,20,30,40),请计算该数组的和

101.定义一个数组,包含以下几个元素(130,120,310,140),请计算该数组的最大值

102.定义一个数组,包含以下几个元素(130,120,310,140),请计算该数组的最小值

103.定义一个数组,包含以下几个元素(130,120,310,140),请计算该数组的和

104.定义一个数组,包含以下几个元素(130,120,310,140),请实现降序排序

答案链接:

https://blog.csdn.net/xianyu120/article/details/115606703

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档