Scala学习——函数

Scala学习——函数

一、方法的定义和使用

1.函数的定义如下:

def  sum(x:Int, y:Int) : Int = {

    x+y

}

(1)以def开头定义

(2)def后面跟函数名

(3)括号中的参数列表,必须指定类型。

(4)冒号后跟函数返回值类型

(5)=后跟大括号内的函数体

2.函数/方法的定义

def 方法名 (参数名:参数类型) : 返回值类型{

    大括号内为方法体

    方法体内最后一行为返回值,不用return

}

3.示例1:求两个数字的和

 def sum(x:Int, y:Int): Int={
    x + y
  }

4.求两个数字中的最大值

def max(x:Int, y:Int): Int={
    if (x>y) x
    else y

5.没有参数的方法,可以省略调用的括号

6.没有返回值

 

二、默认参数

1.计算圆的面积

def area(pai:Double=3.14,r:Double):Double={
      pai*r*r
    }

注意问题:

(1)参数如果不指定名字,必须按照顺序传递。

(2)如果指定了名字,可以不按照顺序传递。

(3)默认参数在不传递新的值时才生效,如果指定新的pai,将会覆盖原始的值。

三、可变参数

使用*来表示可以传递任意数量的参数。

1.定义求和函数

def sum(nums:Int*)={
    var result = 0
    for (num <- nums){
      result += num
    }
    result
  }

2.计算票价

(1)方法一

def price(age:Int,price:Int=120) = {
    if (age <=8)
      println("免票\n")
    else if (age>8 & age<18)
      printf("票价为:%.2f元\n",price*0.5)
    else if (age>=18 & age<60)
      printf("票价为:%.2f元\n",price*1.0)
    else printf("票价为:%.2f元\n",price*0.5)

(2)方法二

def price(age:Int,price:Int=120) = {
    if (age <=8)
      price*0.0
    else if (age>8 & age<18)
      price*0.5
    else if (age>=18 & age<60)
      price*1.0
    else price*0.5

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值