zoukankan      html  css  js  c++  java
  • scala 数据结构(十二):集合实例(一)基本属性和常用的操作、衍生集合、集合计算初级函数

    实例一:

    package com.atguigu.scala.chapter07
    
    /**
      * Author: Felix
      * Date: 2020/5/4
      * Desc: 基本属性和常用的操作
      */
    object Scala09_TestFun {
      def main(args: Array[String]): Unit = {
        val list: List[Int] = List(1,2,3,4,5,6)
        //(1)获取集合长度
        //println(list.length)
        //(2)获取集合大小
        //println(list.size)
        //(3)循环遍历
        //println(list)
        //list.foreach(println)
        //(4)迭代器
        //for (elem <- list.iterator) {
        //  println(elem)
        //}
        //(5)生成字符串
        //val res: String = list.mkString(",")
        //println(res)
        //(6)是否包含
        println(list.contains(1))
      }
    }

    实例二:

    package com.atguigu.scala.chapter07
    
    /**
      * Author: Felix
      * Date: 2020/5/4
      * Desc: 衍生集合
      */
    object Scala10_TestFun {
      def main(args: Array[String]): Unit = {
        val list1 = List(1,2,3,4,5,6,7)
        val list2 = List(4,5,6,7,8,9,10,11,12)
        //(1)获取集合的头     1
        //println(list1.head)
        //(2)获取集合的尾(不是头的就是尾)    List(2, 3, 4, 5, 6, 7)
        //println(list1.tail)
        //(3)集合最后一个数据 7
        //println(list1.last)
        //(4)集合初始数据(不包含最后一个)
        //println(list1.init)
        //(5)反转
        //println(list1.reverse)
        //(6)取前(后)n个元素
        //println(list1.take(3))
        //println(list1.takeRight(3))
        //(7)去掉前(后)n个元素
        //println(list1.drop(3))
        //println(list1.dropRight(3))
    
        //(8)并集
        //val newList: List[Int] = list1.union(list2)
        //println(newList)
        //(9)交集
        //val newList: List[Int] = list1.intersect(list2)
        //(10)差集
        //val newList: List[Int] = list1.diff(list2)
        //val newList: List[Int] = list2.diff(list1)
        //println(newList)
        //(11)拉链
        //println(list1.zip(list2))
        //(12)滑窗
        for (elem <- list1.sliding(3,3)) {
          println(elem)
        }
    
      }
    }

    实例三:

    package com.atguigu.scala.chapter07
    
    /**
      * Author: Felix
      * Date: 2020/5/4
      * Desc:  集合计算初级函数
      */
    object Scala11_TestFun {
      def main(args: Array[String]): Unit = {
        val list: List[Int] = List(5,1,8,2,-3,4)
        //(1)求和
        //println(list.sum)
        //(2)求乘积
        //println(list.product)
        //(3)最大值
        //println(list.max)
        //(4)最小值
        //println(list.min)
        //(5)排序     sorded|sortBy|sortWith
        //println(list.sorted.reverse)
    
    
        //如果函数参数和函数体是一致的情况,那么不能简化
        //println(list.sortBy(elem => elem))
    
        //按照集合中元素的绝对值进行排序
        //println(list.sortBy(elem => elem.abs))
        //println(list.sortBy(_.abs))
        //println(list.sortBy(elem => elem).reverse)
        println(list.sortBy(elem => -elem))
    
        //println(list.sortWith((a:Int,b:Int)=>{a < b}))
        println(list.sortWith(_ > _))
    
    
      }
    }
  • 相关阅读:
    LeetCode--Insert Interval
    LeetCode--Surrounded Regions
    LeetCode--Container With Most Water
    LeetCode--Permutation Sequence
    NYOJ---540奇怪的排序
    NYOJ-858下三角矩阵
    素数筛选法
    NYOJ----776删除元素
    矩阵快速幂
    神奇算式
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/13809413.html
Copyright © 2011-2022 走看看