zoukankan      html  css  js  c++  java
  • Scala学习一——基础

    一.使用Scala解释器

      如果以命令行的方式运行,输出的结果会把类型带上,且结果名默认为res0递增。且Scala解释器读到一个解释器求值打印然后读取下一个(这个过程为读取-求值-打印-循环[REPL])。

    二.用var和val定义变量

    • val定义的是常量(无法修改)
    • var定义的是变量(可以修改)

      注:推荐使用val定义变量,除非需要改变,不用声明类型(但必须初始化)[必要时也可以声明类型]。

    三.数字类型

      Scala也有七种数值类型(Byte,Char,Short,Int,Long,Float,Double),以及Boolean类型,但它们都是类。

    四.使用操作符和函数

      +-×/%和&|^>><<都是方法。(如a+b是a.+(b)的简写),注意无++。(Int类是不可变的)

    五.apply方法

      如“Hello”(4)取第5个字符实际就是"Hello".apply(4)的简写。

      利用伴生对象的apply方法是Scala构建对象的常用方法。如Array(1,4,19)返回一个数组实际调用的就是apply方法。

    六.浏览Scaladoc

      api网址:https://www.scala-lang.org/api

      注意:

        • 想使用数值类型——看清RichInt,RichDouble等,字符串——看清StringOps
        • 数学函数位于scala.math包中,而不是某个类中
        • 有些奇怪的函数名称
        • 标记为implicit方法对应的是自动(隐式转换)
        • 方法可以以函数作为参数
        • Range——数字区间,Seq[Char]——字符序列等等

    七.练习

       1.

       2.

       3.可知res是val,是不可变的

      

     

       4.查找API可知,该方法属于字符串,属于StringOps

     

       5. 查询API得该方法属于Int类

     

       6.

       7.需要引入probablePrime(位于BigInt),Random类(位于scala.util)

       8.

       9.

       10.如图,take是从字符串首开始获取字符串,drop是从字符串首开始去除字符串。 takeRight和dropRight是从字符串尾开始操作。 这四个方法都是单方向的。 如果我想要字符串中间的子字符串,那么需要同时调用drop和dropRight,或者使用substring 。

  • 相关阅读:
    上下文有关文法
    sqlserver cte 速度慢
    hibernate tools eclipse 安装
    sts java nullpointer exception
    Oracle RAC集群体系结构
    bean scope scoped-proxy
    hibernate persist不能插入到表中
    system.out 汉字乱码
    NoSQL数据库(转)
    在PowerShell中获取本地的RAM信息(容量)
  • 原文地址:https://www.cnblogs.com/lyq-biu/p/11940084.html
Copyright © 2011-2022 走看看