当前位置:网站首页 > Scala编程 > 正文

scala编程第4版_scala菜鸟教程

一、概述

二、CentOS7安装Scala

2、配置环境变量
export SCALA_HOME=/opt/modules/scala-2.12.7/
export PATH= P A T H : PATH: PATH:SCALA_HOME/bin

三、变量和数据类型

1.声明变量
Scala中变量的声明使用关键字val和var。
声明一个val字符串变量str:

scala> val str="hello scala" str: String = hello scala 

声明变量时指定数据类型:

scala> val str:String="hello scala" str: String = hello scala 

将多个变量放在一起进行声明:

scala> val x,y="hello scala" x: String = hello scala y: String = hello scala 

2.数据类型
在Scala中,所有的值都有一个类型,包括数值和函数。
在这里插入图片描述
Scala中的值类型可以进行转换,且转换是单向的。

在这里插入图片描述
例如下面的例子,允许将Long型转换为Float型,Char型转换为Int型:

val x: Long =  val y: Float = x //9.E8 (注意在这种情况下会丢失一些精度) val face: Char = '☺' val number: Int = face //9786 
//条件表达式主要是含有if/else的语句块: scala> val i=1 i: Int = 1 scala> val result=if(i>0) 100 else -100 result: Int = 100 //也可以在一个表达式中进行多次判断: scala> val result=if(i>0) 100 else if(i==0) 50 else 10 result: Int = 100 

块表达式:

//块表达式为包含在符号{}中的语句块: scala> val result={ 
    | val a=10 | val b=10 | a+b | } result: Int = 20 

4.Scala中的循环主要有for循环、while循环和do while循环三种。

//for循环 scala> for(i<- 1 to 5) println(i) //while循环 scala> var i=1 i: Int = 1 scala> while(i<5){ 
    | i=i+1 | println(i) | } //do while循环 scala> do{ 
    | i=i+1 | println(i) | }while(i<5) 

四、方法与函数

//方法的定义使用def关键字,语法: def 方法名 (参数列表):返回类型={ 
    方法体 } //例如,将两个数字求和然后返回,返回类型为Int: def addNum( a:Int, b:Int ) : Int = { 
    var sum = 0 sum = a + b return sum } //代码简写,去掉返回类型和return关键字: def addNum( a:Int, b:Int ) = { 
    var sum = 0 sum = a + b sum } 

2.函数
函数的定义与方法不一样,语法:
(参数列表)=>函数体
定义一个匿名函数,参数为a和b,且都是Int类型,函数体为a+b:

( a:Int, b:Int ) =>a+b 

如果函数体有多行,可以将函数体放入一对{}中,并且可以通过一个变量来引用函数,变量相当于函数名称:

val f1=( a:Int, b:Int ) =>{ 
    a+b } 

对上述函数进行调用:

f1(1,2) 

函数也可以没有参数:

val f2=( ) =>println("hello scala") 

对上述函数进行调用:

f2() 

3、方法与函数的区别
(1)方法是类的一部分,而函数是一个对象并且可以赋值给一个变量。
(2)函数可以作为参数传入到方法中。
例如,定义一个方法m1,参数f要求是一个函数,该函数有两个Int类型参数,且函数的返回类型为Int,方法体中直接调用该函数:

def m1(f: (Int, Int) => Int): Int = { 
    f(2, 6) } 

定义一个函数f1:

val f1 = (x: Int, y: Int) => x + y 

调用方法m1,并传入函数f1:

val res = m1(f1) println(res) 

输出结果为8。
(3)方法可以转换为函数
当把一个方法作为参数传递给其它的方法或者函数时,系统将自动将该方法转换为函数。
例如,有一个方法m2:

def m2(x:Int,y:Int) = x+y 

调用(2)中的m1方法,并将m2作为参数传入,此时系统会自动将m2方法转为函数:

val res = m1(m2) println(res) 
val f2=m2 _ val res=m1(f2) println(res) 

输出结果为8。

到此这篇scala编程第4版_scala菜鸟教程的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • scala编程初级实践_scala32024-11-16 21:36:11
  • Scala基础入门:从零开始学习Scala编程2024-11-16 21:36:11
  • scala编程实战 pdf_scala一般做什么开发2024-11-16 21:36:11
  • 每当我想放弃Scala,我就写写Python和Java_为什么不建议学python2024-11-16 21:36:11
  • scala 函数_编程2024-11-16 21:36:11
  • scala matches_scratch算法2024-11-16 21:36:11
  • scala编程实战 pdf_人工智能语言python2024-11-16 21:36:11
  • Java-Scala编程规范超精简2024-11-16 21:36:11
  • scala编程实战 pdf_scratch2.0编程2024-11-16 21:36:11
  • idea scala_scratch编程2024-11-16 21:36:11
  • 全屏图片