【大数据开发】scala练习

package day03

import scala.collection.mutable
import scala.collection.mutable.ListBuffer

/**
 * 1. 创建一个List(3,2,4,6,7,5,1,0,9,8)
 * 将list中每个元素乘以2后生成一个新的集合
 * 将list1中的偶数取出来生成一个新的集合
 * 将list1排序后生成一个新的集合
 * 反转排序顺序
 * 将list1中的元素4个一组方法(grouped),看一下是什么数据类型
 * 将上面方法得到的分组类型转换成List
 * 将多个list压扁成一个List
 */

object HomeWork2 {
    def main(args: Array[String]): Unit = {
        val list = List(3, 2, 4, 6, 7, 5, 1, 0, 9, 8)
       
        //元素乘以2
        val newList1 = list.map(_ * 2)
        //将list1中的偶数取出来生成一个新的集合
        val newList2 = newList1.filter(x => x % 2 == 0)

        //将list1排序后生成一个新的集合
        val newList3 = newList2.sorted

        //反转排序顺序
        val newList4 = newList3.sorted.reverse

        //将list1中的元素4个一组方法(grouped),看一下是什么数据类型
        val ite = list.grouped(4)
        //ite.foreach(x => println(x))
        
        //将上面方法得到的分组类型转换成List
        //不能用下面的方式做,因为ite是一个迭代器,迭代完就没有元素了,不是用来存储的
        val newList5  = ite.toList
        println(newList5)

        //应当使用下面的方式
        val newList7: ListBuffer[List[Int]] = mutable.ListBuffer()
        while(ite.hasNext){
            newList7 += ite.next()
        }

        //将多个list压扁成一个List
        val newList6: List[Int] = newList5.flatten
        for (index <- newList6.indices){
            print(newList6(index) + " ")
        }
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值