scala简单的功能实现~weekone

以下是scala简单的入门题~

1、⼀个数字如果为正数,则它的signum为1;如果是负数,怎么signum为-1;如果是0,则signum 为0.编写⼀个函数来计算这个值。

object Test {
  def main(args : Array[String]){
    val a= 1
    var signum =if(a>0) 1 else if(a<0) -1 else 0
    println(signum)
  }
}

2、针对下列Java循环编写Scala版本 for(int i=10; i>=0;i- -) System.out.println(i)

object Test {
  def main(args : Array[String]){
    for(i<- Range(10,-1,-1))
      println(i)
  }
}

3、编写⼀个过程countdown(n : Int), 打印从n-1到0的数字.(n > 1)

object Test {
  //编写⼀个过程countdown(n : Int), 打印从n-1到0的数字.(n > 1)
   def countdown(n:Int){
     for(i <- Range(n-1,-1,-1))println(i)
   }
  def main(args : Array[String]){
    countdown(5)
  }
}

4、编写⼀个循环,讲整数数组中相邻的元素置换。如,Array(1,2,3,4,5)经过置换变为 Array(2,1,4,3,5)

object Test {
  //编写⼀个循环,讲整数数组中相邻的元素置换。如,Array(1,2,3,4,5)经过置换变为 Array(2,3,4,5,1)
   def swap(array:Array[Int]){
     for(idx <- 0 until (if(array.length%2==0) array.length else array.length-1)){
       val temp=array(idx)
       array(idx)=array(idx+1)
       array(idx+1)=temp
     }
     for(i <- 0 until array.length)
       print(array(i)) 
   }
  def main(args : Array[String]){
    val a=Array(1,2,3,4,5)
    swap(a)
  }
}

5、任意给定⼀个语句(⾃定义,词与词之间以空格好分隔),统计出每个词出现的次数。

object Test {
  //任意给定⼀个语句(⾃定义,词与词之间以空格好分隔),统计出每个词出现的次数。
  def wordcount(content : String) : Map[String, Int]= {
    val counts = scala.collection.mutable.Map[String, Int]()
    for(word <- content.split(' ')){
      if (counts.contains(word))
        counts(word) = counts(word) + 1
      else
        counts += (word -> 1)
        
    }
    print(counts)
    counts.toMap
  }
     
  def main(args : Array[String]){
    val words="a b c d e f a b c"
    wordcount(words)
  }
}
原文地址:https://www.cnblogs.com/xiao02fang/p/10292146.html