当前位置:   article > 正文

scala的简单例题_scala第一章编程题代码至少20行

scala第一章编程题代码至少20行

例题一、

定义一个高阶函数,按照指定的规则对集合里面的每个元素进行操作
比如: Array(“hh”,“red”,“java”,“hadoop”)
规则: 对集合中每个元素进行操作,得到集合每个元素的长度

  1. object 练习 {
  2. // 1、定义一个高阶函数,按照指定的规则对集合里面的每个元素进行操作
  3. def gaojie(): Unit = {
  4. def length(str: String): Int = { //接收,返回长度
  5. str.length
  6. }
  7. //比如: Array("hh","red","java","hadoop")
  8. val arr = Array("hh", "red", "java", "hadoop")
  9. for (word <- arr) {
  10. println(length(word)) //规则: 对集合中每个元素进行操作,得到集合每个元素的长度
  11. }
  12. }
  13. def main(args: Array[String]): Unit = {
  14. println("第一题")
  15. gaojie() //第一题
  16. }
  17. }

例题二、

定义一个高阶函数,对数据中的元素按照指定的规则进行过滤
比如: Array(1,4,7,9,10,6,8,99,88,66)
规则: 只保留偶数数据

  1. object 练习 {
  2. // 2、定义一个高阶函数,对数据中的元素按照指定的规则进行过滤
  3. // 比如: Array(1,4,7,9,10,6,8,99,88,66)
  4. def ousun(): Unit = {
  5. def guolv(arr: Array[Int]): Array[Int] = {
  6. arr.filter(x => x % 2 == 0) // 规则: 只保留偶数数据
  7. }
  8. val arr = Array(1, 4, 7, 9, 10, 6, 8, 99, 88, 66)
  9. val arr2 = guolv(arr)
  10. println("Array" + Arrays.toString(arr2)) // 将数组转换为字符串并打印出来
  11. }
  12. def main(args: Array[String]): Unit = {
  13. println("第二题")
  14. ousun() //第二题
  15. }
  16. }

例题三、

对数据中的元素按照指定规则进行分组
比如:Array(“zhangsan shenzhen man”,“lisi beijing woman”,“zhaoliu beijing man”)
规则: 按照地区进行分组

  1. object 练习 {
  2. // 3、对数据中的元素按照指定规则进行分组
  3. // 比如:Array(“zhangsan shenzhen man”,“lisi beijing woman”,“zhaoliu beijing man”)
  4. def groupB() = {
  5. val arr = Array("zhangsan shenzhen man", "lisi beijing woman", "zhaoliu beijing man")
  6. val groupedData = arr.map { data => //把Array转化为元组,并给一个特定字符并进行分组
  7. val parts = data.split(" ")
  8. (parts(1), data)
  9. }.groupBy(_._1)
  10. // 规则: 按照地区进行分组
  11. groupedData.foreach { case (region, data) => //用模式匹配来输出
  12. println("地区:"+region)
  13. data.map(_._2).foreach(println) //打印第二个
  14. println("---")
  15. }
  16. }
  17. def main(args: Array[String]): Unit = {
  18. println("第三题")
  19. groupB() //第二题
  20. }
  21. }

例题四、

根据指定规则对数组所有元素聚合
比如:Array(10,4,6,10,2)
规则: 求和/求乘积

  1. object 练习 {
  2. // 4、根据指定规则对数组所有元素聚合
  3. def sunc(): Unit = {
  4. val arr=Array(10,4,6,10,2) // Array(10,4,6,10,2)、
  5. var sum=0
  6. var cj=1
  7. for(i <- arr){ // 规则: 求和/求乘积
  8. sum +=i
  9. cj=cj*i
  10. }
  11. println("和为:"+sum+"乘积为:"+cj)
  12. }
  13. def main(args: Array[String]): Unit = {
  14. println("第四题")
  15. sunc() //第二题
  16. }
  17. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/899586
推荐阅读
  

闽ICP备14008679号