Scala练习题104道

简介: Scala练习题104道

练习题答案链接

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),请实现降序排序


目录
相关文章
|
2月前
|
Java 程序员 编译器
Scala 基础语法
Scala 基础语法
34 2
|
8月前
|
程序员 Scala
scala的基础语法
scala的基础语法
75 3
|
8月前
|
大数据 Scala
Scala面向对象练习题34道
Scala面向对象练习题34道
144 0
|
8月前
Scala100道练习题答案
Scala100道练习题答案
62 0
|
Java 编译器 Scala
158 Scala基础语法
158 Scala基础语法
59 0
|
SQL 分布式计算 Java
Scala基础语法
Scala基础语法
116 0
|
存储 Ubuntu Java
|
Java Shell Scala
|
Java Scala
Scala学习一
Scala中的方法与函数: 方法是属于类或者对象的,在运行时,它是加载到JVM的方法区中,而函数则是加载到JVM的堆内存中,同时可以将函数对象赋值给一个变量。函数是一个对象,继承自FunctionN,函数对象有apply、curried、toSting、tupled这些方法,而方法则没有。这是scala与java不同的地方。
101 0
Scala学习一
|
SQL 分布式计算 Scala
Scala学习总结
Scala学习总结
138 0