package com.mengyao.scala.function

/**
 * Scala的变量声明和使用(可变类型和值类型)
 *
 * @author mengyao
 */
object Test0 {
 
  /**
   * Scala中的数据类型定义如下
   * @inline implicit def byteWrapper(x: Byte)       = new runtime.RichByte(x)
   * @inline implicit def shortWrapper(x: Short)     = new runtime.RichShort(x)
   * @inline implicit def intWrapper(x: Int)         = new runtime.RichInt(x)
   * @inline implicit def charWrapper(c: Char)       = new runtime.RichChar(c)
   * @inline implicit def longWrapper(x: Long)       = new runtime.RichLong(x)
   * @inline implicit def floatWrapper(x: Float)     = new runtime.RichFloat(x)
   * @inline implicit def doubleWrapper(x: Double)   = new runtime.RichDouble(x)
   * @inline implicit def booleanWrapper(x: Boolean) = new runtime.RichBoolean(x)
   *
   * Byte     8bit的有符号数字,范围在-128 -- 127
   * Short    16 bit有符号数字,范围在-32768 -- 32767
   * Int      32 bit 有符号数字,范围 -2147483648 到 2147483647
   * Long     64 bit 有符号数字,范围-9223372036854775808 到 9223372036854775807
   * Float    32 bit IEEE 754 单精度浮点数
   * Double   64 bit IEEE 754 双精度浮点数
   * Char     16 bit Unicode字符. 范围  U+0000 到 U+FFFF
   * String   字符串
   * Boolean  布尔类型
   * Unit     表示无值,和其他语言中void等同
   * Null     空值或者空引用
   * Nothing  所有其他类型的字类型,表示没有值
   * Any      所有类型的超类,任何实例都属于Any类型
   * AnyRef   所有引用类型的超类
   *
   */
 
  def main(args:Array[String]){
    
    //变量
    var a = 10
    println(a)
    
    //常量
    val b = "hello "+a;
    println(b)
    
    //获取最大值
    val c = Math.max(3, 1);
    println(c)
   
    //懒加载,在第一次使用时被初始化。没有用到时值为<lazy>
    lazy val d = "a"//在命令行中声明此变量,回车时显示d: String = <lazy>
    println(d)
   
  }
 
}

Scala-变量、常量和懒加载的更多相关文章

  1. lazy-init 懒加载的艺术

    懒加载是一种加载方式,加载单例对象一般有两种方式,一是在启动时就立即创建好,另一种则是在需要用到的时候再去加载即懒加载.懒加载一般会针对单例场景,且一般是针对在加载消耗较大费时,且不一定会用到的场景. ...

  2. ios 懒加载详解

    iOS开发之懒加载 在iOS开发中几乎经常用到懒加载技术,比如我们存放网络数据的数组,控制器的view,控件的自定义,复杂的运算逻辑等等情况下都会用到懒加载技术,那么什么是懒加载呢?? 他又有什么样的 ...

  3. Scala函数式编程(六) 懒加载与Stream

    前情提要 Scala函数式编程指南(一) 函数式思想介绍 scala函数式编程(二) scala基础语法介绍 Scala函数式编程(三) scala集合和函数 Scala函数式编程(四)函数式的数据结 ...

  4. Swift 学习一函数&函数属性&懒加载

    函数 函数相当于OC中的方法 格式: func 函数名(参数列表) -> 返回值类型 {    代码块    return 返回值} func 函数名(参数列表){  // 返回值为Void 可 ...

  5. Swift语法基础入门四(构造函数, 懒加载)

    Swift语法基础入门四(构造函数, 懒加载) 存储属性 具备存储功能, 和OC中普通属性一样 // Swfit要求我们在创建对象时必须给所有的属性初始化 // 如果没办法保证在构造方法中初始化属性, ...

  6. vuex存取token,http简单封装、模拟登入权限校验操作、路由懒加载的几种方式、vue单页设置title

    1.config index.js下面的跨域代理设置: proxyTable: { '/api': { target: 'http://xxxx', //要访问的后端接口 changeOrigin: ...

  7. SpringBoot JPA懒加载异常 - com.fasterxml.jackson.databind.JsonMappingException: could not initialize proxy

    问题与分析 某日忽然发现在用postman测试数据时报错如下: com.fasterxml.jackson.databind.JsonMappingException: could not initi ...

  8. 懒加载(getter\setter理解)

    为什么要用懒加载 1.首先看一下程序启动过程:(如图) 会有一个mian的设置,程序一启动会加载main.storyboard main.storyboard又会加载箭头所指的控制器 控制器一旦加载, ...

  9. 【转】实现ViewPager懒加载的三种方法

    方法一 在Fragment可见时请求数据.此方案仍预加载了前后的页面,但是没有请求数据,只有进入到当前Framgent时才请求数据. 优点:实现了数据的懒加载缺点:一次仍是三个Framgment对象, ...

随机推荐

  1. 使用Httpwatch分析响应时间--转

    时间片段名称 意思 Blocked (阻塞)灰色 阻塞的时间主要包括,预处理时间,(如缓存查找)和网络排队等待的时间,导致阻塞最主要的原因是下载页面中的图片 DNS Lookup(域名解释)紫色 域名 ...

  2. Java基础知识强化84:System类之exit()方法和currentTimeMillis()方法

    1. exit方法: public static void exit(int status): 终止当前正在运行的Java虚拟机.参数用作状态码:根据惯例,非0的状态码表示异常终止. 调用System ...

  3. 多线程、Service与IntentService的比较

    资料摘自网络(侵删)     Service Thread IntentService AsyncTask When to use ? Task with no UI, but shouldn't b ...

  4. sharepoint2013小技巧

    一.创建基于经典认证的应用程序 New-SPWebApplication -Name "Contoso Internet Site" -ApplicationPool " ...

  5. 2.1 Java I/O简史

    Java 1.0 到 1.3 中的 IO 没有而 Java 1.4 中引入的 NIO 有的“改进”:非阻塞IO.缓冲区.通道层.字符集.内存数据.Perl(正则表达式之王): 下一代 I/O-NIO. ...

  6. 转载:Struts2.3.15.1升级总结

    转载网址:http://blog.csdn.net/amosryan/article/details/10350481 由于大家都懂的原因,涉struts2的项目需要将struts2相关包升级至2.3 ...

  7. redis php

    redis php 学习1.连接$redis = new redis();$result = $redis->connect('127.0.0.1',6379); 2.set$redis = n ...

  8. 游戏算法中lua脚本详解

    此外,函数本身也是一个变量,比如: dp@dp:~ % cat test.lua local mylen={} mylen.len3=function (x,y,z) return math.sqrt ...

  9. C程序设计语言练习题1-18

    练习1-18 编写一个程序,删除每个输入行末尾的空格及制表符,并删除完全是空格的行. 代码如下: #include <stdio.h> // 包含标准库的信息. #define MAXLI ...

  10. 转:对于linux下system()函数的深度理解(整理)

    这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为 ...