zoukankan      html  css  js  c++  java
  • 寒假学习进度-1

    今天主要完成了Scala的配置并学习了Scala的编程基础实践

    首先在Scala中,主函数的定义是

    def main(args: Array[String])

    这点与java是不同的,java中是静态方法,而Scala中则必须使用对象方法

    Scala中变量的定义和使用:

    Scala中的变量分为两种var和val,

    val 等同于被 final 修饰过的变量, 即一旦初始化便不可被重新赋值。

    var 等同于未被 final 修饰过的变量,可以被重新赋值。

    def main(args: Array[String]): Unit = {
    val x = 1
    x = 2//编译错误
    }
    def main(args: Array[String]): Unit = {
     var x = 1
     x = 2 // 编译正确
    }

    与 Java 相同,这里的所谓不变性,是指引用不可变但是引用对象的状态却是可变的。

    Scala 支持类型推断,就是它能够根据等式右侧的值来推断出这个参数的类型,例如上面的例子,x 的类型就是 scala.Int。

    如果这并不是你所希望的 x 类型,例如,你期望初始化一个 Double 类型的,可以这么定义:

    val x: Double = 1

    需要注意的是,如果只希望声明变量,而不同时对变量进行初始化(一般来说这种情况只存在于定义成员变量),那么就必须显式定义类型,因为没有等式右侧去推测这个参数的实际类型。

    abstract class MyClass {
    val y: Int
    }

    Scala使用def定义函数

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

    因为Scala的类型推断机制,函数可以没有返回值类型,不过如果是递归函数,则要声明返回值类型

  • 相关阅读:
    IMP本质上是一个通用的函数指针
    yourphp常用标签
    yourphp目录结构
    HTTP与HTTPS的区别
    https和http有什么区别
    如何把浏览器不信任的网址设置为可信任的网点
    ico图标在谷歌浏览器中如何显示?
    Yourphp是一款完全开源免费的.核心采用了Thinkphp框架
    No input file specified的解决方法apache伪静态
    一个服务器的吞吐率
  • 原文地址:https://www.cnblogs.com/liujinxin123/p/12198862.html
Copyright © 2011-2022 走看看