zoukankan      html  css  js  c++  java
  • scala 基础

    • 与 Java/c++ 不同的是,scala 并未提供 ++ 和 – 操作符;
    • 不带参数的 scala 方法通常不使用圆括号;

      scala> "hello".distinct
      String = helo

    1. 数值类型转换:用(成员)方法而不是强制类型转换

    scala> 99.4.toInt(不需加括号)
    Int = 99
    scala> 99.4.toInt.toChar
    Char = c
    scala> "99.4".toDouble
    Double = 99.4

    2. (成员)方法,还是(成员)方法

    • a+b 其实是 a.+(b),之所以能识别 .+,显然内部实现了运算符重载;

      通常来说,可以用 a 方法 b 来简写 a.方法(b),省去了点,也省去了小括号。

      scala> 1.to(10)
      scala.collection.immutable.Range.Inclusive = Range 1 to 10
      scala> 1 to 10
      scala.collection.immutable.Range.Inclusive = Range 1 to 10

    3. apply

    • 使用“类名()”的形式,其实就是“类名.apply()”的一种缩写,以这种方式来构造对象,而不是使用“new 类名()”的方式
      • Array(1, 2, 3, 4)
    • “hello World”(6),在 StringOps 类中有 def apply(n: Int): Char 的函数定义,”Hello World”(6) 其实是 “Hello World”.apply(6) 的缩写,也即提取其第六个字符;

    4. scaladoc

    • 可以在线浏览,也可以下载到本地,以 html 的方式就行查阅;

    如何找到符合自己 scala 版本的 api,可通过如下方式:

    Where to download the latest Scala API documentation?

  • 相关阅读:
    团队作业
    第四次作业
    第三次作业
    从电梯问题,看c和c++之间的区别(有点懂了)错觉错觉
    团队作业2
    游戏方案
    电梯调度程序4
    电梯调度程序3
    电梯调度程序2
    电梯调度程序1
  • 原文地址:https://www.cnblogs.com/mtcnn/p/9421244.html
Copyright © 2011-2022 走看看