scala 概述(基础部分)

给你一囗甜甜゛ 提交于 2019-12-03 07:17:36

 

目录

                 scala是什么?

java scala 和jvm的关系。

编写一个 object ,对应的注释。

生成文档注释

定义变量

数据类型

强制类型转换

标识符的定义规则

for循环

breakable介绍

函数式编程

      1)函数式编程的介绍

      2)方法和函数的定义

      3)递归


 

scala是什么?

    1.scala是一门多范式的编程语言。

    2.由spark的兴起,带动scala的发展。

java scala 和jvm的关系。

编写的java代码首先要经过javac编译器,编译成.class文件。然后经过java运行将.class文件加载到jvm中去运行。jvm是屏蔽机器本身硬件的。

编写一个 object ,对应的注释。

生成文档注释

scaladoc -d /usr/xwh/document  test.scala  

-d 是指定的参数

/usr/xwh/document   生成的文档注释存放的路径

test.scala  对这个文件生成文档

定义变量

var a : Int = 1;
val b : String = "aaa";
a = 3
println(a)
println(b)

 var 和 val 的区别 用var定义的变量可以修改,用val定义的变量不可以修改。

数据类型

强制类型转换

将精度大的数据类型转换为精度小的数据类型,转换时要加上强制类型转换。

标识符的定义规则

for循环

breakable

函数式编程

 

1)函数式编程的介绍

2)方法和函数的定义

object Test {
  def main(args: Array[String]): Unit = {

    //调用的一个方法
    val dog = new Dog
    println("dog = "+ dog.sum(10,10))

    //调用的一个函数
    // dog.sum _ 将一个方法转换成函数
    val function1 = dog.sum _
    println("function1 = "+ function1(20,20))

    //函数的定义
    val function2 = (n1:Int,n2:Int) =>{
      n1 + n2
    }
    println("function2 = "+ function2(30,30))
  }
}

class Dog{
  def sum(n1:Int,n2:Int):Int ={
     return n1 + n2;
  }
}

 函数和方法的关系图

只是身份的不同 (按照不同的场合)

小张  在家是丈夫   在学校是校长 

 

函数的定义

3)递归

  递归的定义就是自己调用自己。

  总结:1.循环调用自己本身就相当于重新进入一个函数(重新压栈)

             2.调用总会有出口(有结果),否则就会陷入死循环。

             3.重新压栈,每一次传入的参数都是独立的。

4)函数的注意细节讨论

 

 

5)惰性函数

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!