scala 语法 基础1

来源:互联网 发布:windows系统更新失败 编辑:程序博客网 时间:2024/05/18 17:40
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)//  }}
0 0
原创粉丝点击