scala-32:List的基本操作实战与基于模式匹配的List排序算法实现

内容:

1、list的基本操作

2、List进行模式匹配时的排序算法

    val bigData = List("Hadoop" , "Spark")
    val data = List(1 , 2 , 3)
    (1)List的第一种申明方式
    val bigData_Core = "Hadoop" :: ("Spark" :: Nil)
    val data_Int = 1 :: 2 :: 3 :: Nil
    (2)List第二种申明方式
    println(data.isEmpty)
    println(data.head)
    println(data.tail.head)
    //调用List的isEmpty、head、tail方法
    val List(a,b) = bigData
    println("a : " + a + " === " + " b: " + b)  //a=Hadoop,b=Spark
    val x :: y :: rest = data
println("x : " + x + " === " + " y: " + y + " === " + rest )
注:其中List的head为第一个值,tail为除head外其他的值
List排序:
  val shuffledData = List(6,3,5,6,2,9,1)
    println(sortList(shuffledData))
    
    def sortList(list : List[Int]): List[Int] = list match{
      case List() => List()
      case head :: tail  => compute (head, sortList(tail))
    }
    //计算list的值
    def compute(data : Int , dataSet : List[Int]) : List[Int] = dataSet match{
      case List() => List(data)
      case head :: tail  => if (data <= head) data :: dataSet
        else  head :: compute(data, tail)    
}
  /*
     * list高阶方法
     * map
     * flatMap
     * filter
     * partition
     * find
     * sort
     */



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值