Scala语言入门五(函数)

简介: Scala语言函数的使用

Scala函数的使用

1、定义

def 方法名(参数名: 参数类型): 返回值类型 = {//方法体}

/**
 * @author Gjing
 **/
object Test {

  def main(args: Array[String]): Unit = {
    sayHello("Hello")
  }

  def sayHello(text: String):Unit = {
    println(text)
  }
}

如果你不写等于号和方法主体,那么方法会被隐式声明为抽象(abstract),包含它的类型于是也是一个抽象类型。

2、默认值

调用方法时如果为传参,则会使用默认值

/**
 * @author Gjing
 **/
object Test {

  def main(args: Array[String]): Unit = {
    sayWorld()
  }

  def sayWorld(text: String = "World"):Unit = println(text)
}

3、命名参数

可通过参数名指定你当前设置的值是哪一个参数

/**
 * @author Gjing
 **/
object Test {

  def main(args: Array[String]): Unit = {
    nameTest(text1 = "hello",text2 = "world")
  }

  def nameTest(text1: String, text2:String): Unit = {
    println(text1, text2)
  }
}

4、可变参数

不限制参数的数量,如Java1.5出现的...

/**
 * @author Gjing
 **/
object Test {

  def main(args: Array[String]): Unit = {
    varTest(1,2,3,4)
  }

  def varTest(a: Int*):Unit = println(a)
}

5、条件表达式

和java类似

object Test {
  
  def main(args: Array[String]): Unit = {
    if (1 == 1) println(true) else println(false)
  }
}

6、循环表达式

在循环时很多时候会用到区间,scala提供了两种方式,分别为tountil, to关键字会包含右边的值,比如1 to 10,此时循环输出会是1-10;until不包含, 循环输出会是1-9

a、while

运行一系列语句,如果条件为true,会重复运行,直到条件变为false

object Test {
   def main(args: Array[String]) {
      // 局部变量
      var a = 10;

      // while 循环执行
      while( a < 20 ){
         println( "Value of a: " + a );
         a = a + 1;
      }
   }
}

b、for

用来重复执行一系列语句直到达成特定条件达成,一般通过在每次循环完成后增加计数器的值来实现

object Test {
   def main(args: Array[String]) {
      // for 循环
      for( a <- 1 to 10){
         println( "Value of a: " + a );
      }
   }
}

c、do while

条件表达式出现在循环的尾部,所以循环中的 statement(s) 会在条件被测试之前至少执行一次

object Test {
   def main(args: Array[String]) {
      // 局部变量
      var a = 10;

      // do 循环
      do{
         println( "Value of a: " + a );
         a = a + 1;
      }while( a < 20 )
   }
}
目录
相关文章
|
4月前
|
分布式计算 Java Hadoop
Scala入门必刷的100道练习题(附答案)
Scala入门必刷的100道练习题(附答案)
273 1
|
4月前
|
Java 大数据 Scala
Scala入门【运算符和流程控制】
Scala入门【运算符和流程控制】
|
4月前
|
Java Shell API
Scala入门【变量和数据类型】
Scala入门【变量和数据类型】
|
6月前
|
安全 Java 编译器
Scala语言入门:初学者的基础语法指南
作为一种在Java虚拟机(JVM)上运行的静态类型编程语言,Scala结合了面向对象和函数式编程的特性,使它既有强大的表达力又具备优秀的型态控制
27 0
|
11月前
|
JavaScript 前端开发 Java
Scala语言入门以及基本语法
Scala语言入门以及基本语法
|
分布式计算 Java 程序员
spark开发基础之从Scala符号入门Scala
spark开发基础之从Scala符号入门Scala
137 0
spark开发基础之从Scala符号入门Scala
|
开发框架 IDE Java
体验 Scala 语言的 Play Web 框架
体验 Scala 语言的 Play Web 框架
体验 Scala 语言的 Play Web 框架
|
SQL 存储 NoSQL
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
198 0
|
SQL 存储 NoSQL
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
基于JVM的开源数据处理语言主要有Kotlin、Scala、SPL,下面对三者进行多方面的横向比较,从中找出开发效率最高的数据处理语言。本文的适用场景设定为项目开发中常见的数据处理和业务逻辑,以结构化数据为主,大数据和高性能不作为重点,也不涉及消息流、科学计算等特殊场景。......
192 0
JVM 上数据处理语言的竞争:Kotlin, Scala 和 SPL
|
开发框架 分布式计算 Java
十分钟带汝入门大数据开发语言Scala
Scala是一门多范式的编程语言,一种类似Java的编程语言 ,设计初衷是实现可伸缩的语言 、并集成面向对象编程和函数式编程的各种特性。目前最主流的大数据开发框架Spark的实现就是通过Scala去实现的。Scala可以与Java互操作。它用scalac这个编译器把源文件编译成Java的class文件(即在JVM上运行的字节码),也可以从Scala中调用所有的Java类库,也同样可以从Java应用程序中调用Scala的代码。
十分钟带汝入门大数据开发语言Scala