思维导图:http://naotu.baidu.com/file/8ac705df572cd2f131aff5f0ed9c4c88?token=871f7d35671c6287

Scala
算术运算
math.exp(10)
输入输出
输入:StdIn.readLine("请输入")
读文件:Source.fromFile("xx.txt").getLines.mkString
写文件:new PrntWriter("xx.txt").println("haha")
包的使用
导入全部:import xx._
引入部分:import xx.{A, B}
导入后重命名:import scala.io.{Source => Src}
语法规则
$可以当做字母,例如1. $plus(2)
关键字加``可以避免冲突,如val `yeild` = 1
字符串可以用"""   """包围进行格式化
判断数据类型isInstance[Int]/a.getClass==classOf(Int)
标点:=>匿名函数,<-for循环迭代器,->Map键值对,_占位符(匿名函数参数或导包的通配符)
4种执行方式
数据结构
无序的放在scala.collection.mutable包,有序的放在immutable
ArrayBuffer:不定长数组,Tuple 元组有序可存放不同类型
Option 选项表示有可能包含值的容器,Iterator 迭代器可以遍历容器
val a = ListBuffer(1, 2, 3) 判断a.instanceOf(Mutable)
字符串
拼接可以不带.,如"你" concate "好"
s插值器、f插值器各种类型、raw插值器保持原型
数组Array
定义val arr : Array[Any] = new Array[Any](3)
构造相当于隐式调用Array.apply,或range、tabulate
多维数组可以使用两个for循环、fill或tabulate
操作:slice切片、排序sorted、转换.toBuffer,删除元素dropRight(3)
列表List
集合Set
映射Map
元组Tuple
迭代器Iterator
选项Option
判断集合中的值是否存在,getOrElse或isEmpty
选择结构
变量 match{ case 1 => xxx}
循环结构
异常捕获
catch{case ex : IOException =>xxx}
函数定义
匿名函数
高阶函数
类的定义
getter和setter
构造器
单例对象和伴生对象
Object和Class同名,被称为伴生类和伴生对象,其信息可以共享
伴生类和伴生对象在编译完成后会被放在同一个类中
只有一个object叫做单例对象
继承和特征
trait特征
apply,unapply和update

【Scala】思维导图的更多相关文章

  1. Scala思维导图

  2. "Becoming Functional" 阅读笔记+思维导图

    <Becoming Functional>是O'Reilly公司今年(2014)7月发布的一本薄薄的小册子,151页,介绍了函数式编程的基本概念.全书使用代码范例都是基于JVM的编程语言, ...

  3. 18道kafka高频面试题哪些你还不会?(含答案和思维导图)

    前言 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处 ...

  4. Photoshop、Illustrator思维导图笔记

    半年前学习Photoshop时记得的思维导图笔记,可能不是很全,常用的基本都记下了.

  5. IT技术思维导图

    在网上看到有个人总结的java技术的东东,觉得很好,就保存下来了,码农还真是累啊,只有不断的学习才能有所提高,才能拿更多的RMB啊. java技术思维导图 服务端思维导图 前端思维导图

  6. XMind共享未保存的思维导图的教程

    我们在XMind 6对导图进行局域网共享时,一般都是对XMind文件先进行保存再共享,那样是忘记保存呢,该如何共享.局域网共享功能是XMind 6特有的功能之一,自是较为完善,性能强大的功能,当然有办 ...

  7. 思维导图FreeMind安装问题及简单使用

    思维导图软件使用的坎坷之路 一直想将思维导图加入到工作环境当中 最开始使用的是 MindManager(http://www.mindmanager.cc/) ,而且感觉利用它制作出来的导图外观也比较 ...

  8. 【干货】jsMind思维导图整合Easyui的右键菜单

    原材料: 1.web版本的JavaScript思维导图(BSD开源协议)[戳这里去官网]. 2.easyui最新版[戳这里去官网]. 这里是原本的jsMind: 在线测试地址 :http://hizz ...

  9. Unity_UGUI知识点思维导图

    转自 http://blog.csdn.net/qq_34134078/article/details/51772568 个人总结的UGUI学习知识要点思维导图,四张部分图及最后一张整体图 1.UI基 ...

  10. 思维导图FreeMind

    什么是MindMap? MindMap(被译成思维导图或心智图)是一种思维工具,由英国的记忆之父托尼-博赞发明. MindMap是一种新的思维模式,它将左脑的逻辑.顺序.条例.文字.数字,以及右脑的图 ...

随机推荐

  1. 第六章:Django 综合篇 - 13:发送邮件

    在Python中已经内置了一个smtp邮件发送模块,Django在此基础上进行了简单地封装,让我们在Django环境中可以更方便更灵活的发送邮件. 所有的功能都在django.core.mail中. ...

  2. 重要参考文档---MySQL 8.0.29 使用yum方式安装,开启navicat远程连接,搭建主从,读写分离(需要使用到ProxySQL,此文不讲述这个)

    yum方式安装 echo "删除系统默认或之前可能安装的其他版本的 mysql" for i in $(rpm -qa|grep mysql);do rpm -e $i --nod ...

  3. X-Pack:创建阈值检查警报

    简单的事情应该简单(Simple things should be simple),这是Elastic {ON} '17的主题之一,Elastics收到了许多关于使用简单易用的UI创建警报的请求.事实 ...

  4. Kibana:Canvas入门

  5. [基础] BS/CS 区别 Http/Https 区别 中间件请求

    BS和CS的区别:   1.BS结构:Browser-Server-从浏览器到服务器,浏览器打开的所有内容都属于BS(三大主流浏览器Safari.Chrome和Firefo)   2.CS结构:Cli ...

  6. 关于使用git传输文件到GitHub

    git status(查看本地git仓库情况) git add "文件名(精确到文件拓展名)" git commit -m "说明"(提交到上传缓存区域) gi ...

  7. C#-10 事件

    一 发布者和订阅者 很多时候都有这种需求,当一个特定的程序事件发生时,程序的其他部分可以得到该事件已经发生的通知. 发布者/订阅者模式可以满足这种需求. 发布者:发布某个事件的类或结构,其他类可以在该 ...

  8. 前端程序员学习 Golang gin 框架实战笔记之一开始玩 gin

    原文链接 我是一名五六年经验的前端程序员,现在准备学习一下 Golang 的后端框架 gin. 以下是我的学习实战经验,记录下来,供大家参考. https://github.com/gin-gonic ...

  9. POJ2486 Apple Tree(树形背包)

    从每个节点u出发后有两种情况:回到u和不回到u. dp数组设为三维,第一维是节点编号,第二维是从该节点开始走的步数,第三维1/0 表示是否回到该节点. 可以回到时:dp[u][j][1]=max(dp ...

  10. UVA12186 工人的请愿书 Another Crisis (树形DP)

    dp[i]表示要让i向上级发请愿书,最少需要多少个工人递交请愿书,因为要取前T%最小的,所以还要将i的子节点排序(这里用vector实现),取前c个最小的作为dp[i]的值. 这里用dfs可以省去dp ...