scala 语法 基础1



object Study  extends App{


        /*无返回值的函数*/
//   def add(a:Int , b:Int){
//    println(a + b)
//    }
//  add(1,2)


    /*有返回值的函数*/
    //()作为scala中一个类型-- Unit类型
    //如果返回值强制指定为Unit  返回就是Unit类型
//  def add(a:Int , b:Int) :Int  = {
//    a + b     //默认返回最后一行的值
//  }
//  var c  = add(1,2)
//  println(c)

    /*小知识点*/
//  1.可以不写“;” 如果一行上有多条语句的情况下要写
//  2.scala可以使用带参调用方式
//  var c  = add(b = 1,a=1)
//  println(c)

//      def judge(a:Int) :Int = {
//    if(a > 0){
//       1    //return相当于函数版的break语句
//    }else if(a < 0){
//      -1
//    }else{
//      0
//    }
//  }
//  
//  var c = judge(-3)
//  println(c)  



    /*while循环*/
//  while(true){
//    println("hello")
//  }


  /*for循环  scala中的for基本形态*/
//  for(int i = 0 ; i < 5 ; i++)  //java的for循环
//  for( i : List)                //增强for

//  println(1 to 10)   //Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
//  for(i <- 1 to 10 ){  //闭区间
//    println(i)
//  }

//  for(i <- 1 until 10 ){  //开区间
//    println(i)
//  }

//   for(i <- 1 until 10 reverse){  //倒序  不能使用 10 to 1
//     println(i)
//   }

  /*高级for循环*/
  //守卫
//  for(i <- 1 to 10 reverse ; if i % 3 == 0){
//    println(i)
//  }

//      for(i <- 1 to (10,3)){   //改变步长
//    println(i)
//  }

//  for(i <- 1 to 10 ; j <- 1 to 5){  //双重for循环
//      println(i + " - " + j)
//  }

//  //for的推导式
//  var c = for( i <- 1 to 10 )yield (i * 2)
//  println(c)



  /*定长数组*/
  //使用new定义数组
//  var arr1 = new Array[Int](5)
//  arr1(1) = 2
    println(arr1)
//  for(i <- arr1){
//    println(i)
//  }

  //使用Array类进行定义

//  var arr2 = Array(1,2,3,4)
//  for( i <- arr2){
//    println(i)
//  }
//  println(arr2.min)
//  println(arr2.max)
//  println(arr2.sum)
// println(arr2.mkString("[",",","]"))   
//  Arrays.toString(arr) // [1,2,3]
//import scala.collection.mutable.ArrayBuffer  
//  /*变长数组*/
//  var arrbuf1 = ArrayBuffer(1,2,3,4)
//  arrbuf1 += 5
//  arrbuf1 -= 3
//  arrbuf1 ++= Array(3,4,5)
//  arrbuf1 --= Array(3,4,5)
//  arrbuf1.toArray
//  println(arrbuf1.mkString(","))

//  var arrB = arr2.toBuffer
//  arrB += 9
//  println(arrB.mkString(","))


  //filter 和 map用法
//  var arr4 = Array(1,2,3,4,5)
//  var arr5 = arr4.filter(_%2 == 0 ).map(_* 2)
//  println(arr5.mkString(","))


   //元组定义
  //对偶(使用“()”表示)只是元组最简单的形式  使用()表示
    //var t = (1,2,3,4)
//  for(i <- t){   //元组不能使用for遍历
//    println(i)
//  }

//  println(t _3)   //元组的下标从1开始
//  println(t _1)   //元组的下标从1开始

//  var (first,second,third,forth) = t
//  var (first,second,third,_) = t
//  println(second)

//  var s = "Hello World!"
//  println(s.partition(_.isUpper))


    //拉链操作
//  var arr1 = Array(1,2,3,4,5,6)
//  var arr2 = Array("a","b","c","d","e")
//  var arr3 = arr1.zip(arr2)   //
//  for(i <- arr3){
//    println(i)
//  }
    //println(arr3.mkString(","))
    //var map = arr3.toMap   //map
    //for(i <- map){
    //  println(i)
//  }



}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值