scala第2章练习题part1

/*第二章 练习题*/
//1. 一个数字如果为正数,则他的signum为1;如果是负数,则signum为-1;如果是0,则signum为0.编写一个函数来计算这个值
object HelloScala {
  def main (args: Array[String]) {
    println("Hello Scala")
    var x : Int = 0
    var y : Int = 0
    for (i <- -1 to 1) //for循环不能从大到小???
    {
      x = i
      //println("x = " + x)
      if (x > 0)
      {
        y = 1
      }
      else if (x < 0)
      {
        y = -1
      } else
      {
        y = 0
      }
      println("y = " + y)
    }
  }

}


/*2.一个空的块的表达式{}的值是什么?类型是什么?*/
//A: 值是表达式?类型是Unit


/*3.指出在Scala中何种情况下赋值语句x=y=1是合法的。(提示:给x找个合适的类型定义)*/
object HelloScala {
  def main(args: Array[String]) {
    println("Hello Scala")
    var x: Unit = 0
    var y: Unit = 0
    x = y = 1
    println("x = " + x)
  }
}


/*4.针对下列的java循环写一个Scala版
* for (int i = 10; i >= 0; i--)
* System.out.println(i)*/
object HelloScala {
  def main(args: Array[String]) {
    println("Hello Scala")
   for (x <- 0 to 10 reverse)
   {
     println("x = " + x)
   }
  }
}


/*5. 编写一个过程countdown(n:Int),打印从n到0的数字*/
object HelloScala {


  def countdown(n:Int): Unit =
  {
    for (x <-0 to n reverse)
    println("x = " + x)
  }


  def main(args: Array[String]) {
    println("Hello Scala")
    countdown(15)
  }
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第三介绍了Scala的函数和方法,以及它们的区别。具体内容如下: 1. 函数和方法的区别:函数是一段可以独立调用的代码,它可以像变量一样被传递、返回和赋值;而方法是属于某个对象或类的一段代码,它必须通过对象或类来调用。 2. 函数的定义方式:可以使用def关键字定义函数,也可以使用匿名函数(lambda表达式)。 3. 函数的参数:Scala的函数可以没有参数,也可以有多个参数。参数可以有默认值,也可以是可变参数。 4. 函数的返回值:Scala的函数可以没有返回值,也可以有返回值。返回值类型可以显式声明,也可以自动推断。 5. 方法的定义方式:方法必须定义在对象或类中,使用def关键字表示。方法可以有访问修饰符和参数列表,也可以有返回值类型和方法体。 6. 方法的参数:和函数一样,方法可以有多个参数,也可以有默认值和可变参数。 7. 方法的返回值:方法必须有返回值类型,如果没有显式声明,则默认返回Unit类型。 8. 函数和方法的调用:函数可以直接调用,也可以通过变量、高阶函数等方式调用;方法必须通过对象或类来调用。 9. 函数式编程的特点:函数式编程强调函数的纯粹性、不可变性和高阶函数的使用,它能够简化代码、提高可读性和可维护性。 总之,Scala的函数和方法都是非常重要的编程工具,它们可以让我们更加灵活地组织代码,提高开发效率和代码质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值