package com.gouzheng.bigdata.scala

object Shuzu {
  def main(args: Array[String]): Unit = {
    //打印0到100
//    val a=0.to(100)
//    for (i <- a){
//      println(i)
//    }
    //打印0到99
//    val a= 0.until(100)
//    for (i <- a){
//      println(i)
//      }
    //打印偶数
//    for(i <- 0.until(100) if (i % 2 == 0)){
//      println(i)
//    }
    //数组
//    val arr : Array[String] = Array[String]()
//      val arr = Array[Int](1,2,3,4)
    //遍历出所有元素
//      arr.foreach(print(_))
//    val arr = new Array[Int](4)
//    arr(0) = 1
//    arr(1) = 2
//    arr(2) = 3
//    arr(3) = 4
    //过滤出小于2的
//    val arr03 = arr.filter(_ <= 2)
//    for(i <- arr03){
//      println(i)
//    }
    //所有元素加1
//    val arr04 = arr.map(_+1)
//    for(i <- arr04){
//      println(i)
//    }
    //二维数组
    val arr05 = Array(Array(4,1,2), Array(1,2))
    //将二维数组压成一个数组
    val arr06 = arr05.flatMap(x=>{x})
//    println(arr06.length)
//    for(i <- arr06){
//      print(i)
//    }
    //所有元素累加
//    print(arr06.sum)
    //取出第一个元素
//    print(arr06.head)
    //取出最后一个元素
//    print(arr06.last)
    //取出前三个元素
//    for(i <- arr06.take(3)){
//      print(i)
//    }
    //取出最大最小值
//    print(arr06.max)
//    print(arr06.min)
    //将元素拼接成以一个逗号拼接的字符串
//    print(arr06.mkString(","))
    //循环遍历数组操作
//    arr06.foreach(print(_))
    //元素累加操作
//    println(arr06.reduce(_+_))
    //元素相除操作
//    println(arr06. reduce((x, y) =>{x / y}))
    //元素倒序
//    arr06.reverse.foreach(println(_))
    //去重
//    arr06.distinct.foreach(println(_))
    //数组并集操作
    val arr07 = Array(4,5,6)
//    arr06.diff(arr07).foreach(println(_))
    val arr08 = arr06.union(arr07).foreach(print(_))
  }
}