语法:使用表达式定义值和变量

val <identifier>[:<type>]=<expression>  字面值类型

var <identifier>[:<type>]=<expression>  变量类型

实例1:

同一级定义类型

scala> val x=5*20;val amount=x+10

x: Int = 100
amount: Int = 110

块局部定义(建议采用)

scala> val amount={val x=5*20;x+10}
amount: Int = 110

写法2:

scala> val amount={
| val x=5*20
| x+10
| }
amount: Int = 110

表达式嵌套:

scala> {val a=1;{val b=a*2;{val c=b+4;c}}}
res11: Int = 6

实例2-if-else:

if(<Boolean expression>)<expression>

else <expression>

scala> if(47%3 >0) print("not a multipul of 3")

scala> val result=if(false) "what does this return?"
result: Any = ()  //未定类型,可能是String或Unit

scala> val x=10;val y=20
x: Int = 10
y: Int = 20

scala> val max=if(x>y)x else y
max: Int = 20

匹配表达式(类似的Switch表达式)

<expression> match{

case <pattern match>=><expression>

}

Scala学习笔记(3)-表达式归纳的更多相关文章

  1. Java8学习笔记----Lambda表达式 (转)

    Java8学习笔记----Lambda表达式 天锦 2014-03-24 16:43:30 发表于:ATA之家       本文主要记录自己学习Java8的历程,方便大家一起探讨和自己的备忘.因为本人 ...

  2. 基于.net的分布式系统限流组件 C# DataGridView绑定List对象时,利用BindingList来实现增删查改 .net中ThreadPool与Task的认识总结 C# 排序技术研究与对比 基于.net的通用内存缓存模型组件 Scala学习笔记:重要语法特性

    基于.net的分布式系统限流组件   在互联网应用中,流量洪峰是常有的事情.在应对流量洪峰时,通用的处理模式一般有排队.限流,这样可以非常直接有效的保护系统,防止系统被打爆.另外,通过限流技术手段,可 ...

  3. Scala学习笔记及与Java不同之处总结-从Java开发者角度

    Scala与Java具有很多相似之处,但又有很多不同.这里主要从一个Java开发者的角度,总结在使用Scala的过程中所面临的一些思维转变. 这里仅仅是总结了部分两种语言在开发过程中的不同,以后会陆续 ...

  4. scala学习笔记1(表达式)

    <pre name="code" class="plain">//Scala中的 main 函数需要存在于 object 对象中,我们需要一个obj ...

  5. Scala学习笔记之:tuple、array、Map

    [TOC] 本文<快学Scala>的笔记 tuple学习笔记 tuple的定义 对偶是元组(tuple)的最简单形态--元组是不同类型的值的聚集. 元组的值是通过将单个值包含在圆括号中构成 ...

  6. Scala学习笔记之二--基本数据类型

    前言 本篇主要讲Scala的基本数据类型,更多教程请参考:Scala教程 基本数据类型 Scala一共提供了9中数据类型,Scala的基本数据类型与java中的基本数据类型是一一对应的,这是Scala ...

  7. 机器学习(三)--- scala学习笔记

    Scala是一门多范式的编程语言,一种类似Java的编程语言,设计初衷是实现可伸缩的语言.并集成面向对象编程和函数式编程的各种特性. Spark是UC Berkeley AMP lab所开源的类Had ...

  8. scala学习笔记3

    一.条件表达式 在scala中if/else表达式有值,这个值就是跟在if或者else之后的表达式的值. scala> val x = 10 x: Int = 10 scala> val ...

  9. Scala学习笔记(一)编程基础

    强烈推荐参考该课程:http://www.runoob.com/scala/scala-tutorial.html 1.   Scala概述 1.1.  什么是Scala Scala是一种多范式的编程 ...

随机推荐

  1. C# base和this的用法

    /** this关键字* this关键字引用类的当前实例* 注意:静态成员方法中不能使用this关键字,this关键字只能在实例构造函数.实例方法或实例访问器中使用*/ /** base关键字* ba ...

  2. vue中使用mockjs

    第一步安装mockjs:npm i mockjs -S 在src目录下新建mock文件夹,文件夹添加test.js test.js内容如下: import Mock from 'mockjs'; co ...

  3. Linux od命令(以指定进制显示文件)

    从“读取二进制文件”出发,到od命令的使用 在桃村实习期间,一直努力做毕业设计,我的毕业设计中有一个内容就是读取SEGY文件.在读取文件时,经常遇到的问题时你要读取浮点型数据,这时你就必须考虑你所使用 ...

  4. UnicodeEncodeError: ‘gbk’ codec can’t encode character u’\u200e’ in position 43: illegal multib

    [问题] 在执行代码时,提示上述错误,源码如下: # 下载小说... def download_stoy(crawl_list,header): # 创建文件流,将各个章节读入内存 with open ...

  5. Yarn执行流程

    在Yarn中,JobTracker被分为两部分:ResourceManager(RM)和ApplicationMaster(AM). MRv1主要由三部分组成:编程模型(API).数据处理引擎(Map ...

  6. Python学习--判断变量的数据类型

    import types aaa = 0 print type(aaa) if type(aaa) is types.IntType: print "the type of aaa is i ...

  7. jinja2主要语法

    jinja2主要语法 1.变量 {{name}} 2.控制语句 {% if %} {{name}} {% else %} {{name2}} {% endif%} 3.宏 {% macro check ...

  8. TableView头视图高度问题

    www.cnblogs.com/ihojin/p/tableHeaderView-resizeheight.html 有这么一种需求,在列表顶端显示一些别样的数据,而这个别样的数据则需要通过一个别样的 ...

  9. Java 实现文件批量重命名亲测可用(精简版)

    package com.cmge.utils; import java.io.*; import java.util.*; import java.util.Map.Entry; import com ...

  10. x64免签名驱动程序

    DSEFix GitHub https://github.com/hfiref0x/DSEFix