Scala系统学习(四):Scala数据类型
Scala与Java具有相同的数据类型,具有相同的内存占用和精度。以下是提供Scala中可用的所有数据类型的详细信息的表格:
| 序号 | 数据类型 | 说明 |
|---|---|---|
| 1 | Byte | 8位有符号值,范围从-128至127 |
| 2 | Short | 16位有符号值,范围从-32768至32767 |
| 3 | Int | 32位有符号值,范围从-2147483648至2147483647 |
| 4 | Long | 64位有符号值,范围从-9223372036854775808至9223372036854775807 |
| 5 | Float | 32位IEEE 754单精度浮点值 |
| 6 | Double | 64位IEEE 754双精度浮点值 |
| 7 | Char | 16位无符号Unicode字符。范围从U+0000到U+FFFF |
| 8 | String | 一个Char类型序列 |
| 9 | Boolean | 文字值true或文字值false |
| 10 | Unit | 对应于无值 |
| 11 | Null | null或空引用 |
| 12 | Nothing | 每种其他类型的亚型; 不包括无值 |
| 13 | Any | 任何类型的超类型; 任何对象的类型为Any |
| 14 | AnyRef | 任何引用类型的超类型 |
上面列出的所有数据类型都是对象。Scala中没有类似Java中那样的原始类型。 这意味着您可以调用Int,Long等方法。
Scala基本文字
Scala用于文字的规则是简单直观的,本节介绍所有基本的Scala文字。
整数文字
整数文字通常为Int类型,或Long类型,后跟L或l后缀。这里有一些整数文字 -
0xFFFFFFFF
0777L
浮点文字
浮点文字的类型为Float,后跟浮点类型后缀F或f,否则为Double类型。 这里有一些浮点文字 -
0.0
1e30f
3.14159f
1.0e100
.
布尔文字
布尔文字:true和false是Boolean类型的成员。
符号文字
符号文字'x是表达式scala.Symbol(“x”)的缩写。符号是一个case类,其定义如下 -
package scala
final case class Symbol private (name: String) {
override def toString: String = "'" + name
}
字符文字
字符文字是用引号括起来的单个字符。字符是可打印的Unicode字符或由转义序列描述。 这里有一些字符文字 -
'a'
'\u0041'
'\n'
'\t'
字符串文字
字符串文字是双引号中的一系列字符。字符是可打印的Unicode字符或由转义序列描述。 这里有一些字符串文字 -
"Hello,\nWorld!"
"This string contains a \" character."
多行字符串
多行字符串文字是用三个引号""" ... """括起来的一系列字符。字符序列是任意的,除了它最终可能包含三个或更多个连续的引号。
字符不一定是可打印的; 换行符或其他控制字符也是允许的。这是一个多行字符串文字 -
"""the present string
spans three
lines."""
Null值
null值的类型为scala.Null,因此与每个引用类型兼容。它表示引用一个特殊的“null”对象的参考值。
转义序列
以下转义序列在字符和字符串文字中被识别。
Unicode为0到255之间的字符也可以用八进制转义来表示,即反斜杠“\”后面是一个最多三个八进制字符的序列。以下是显示几个转义序列字符的示例 -
示例
object Test {
def main(args: Array[String]) {
println("Hello\tWorld\n\n" );
}
}
当上述代码被编译和执行时,它产生以下结果 -
Hello World
Scala系统学习(四):Scala数据类型的更多相关文章
- Scala系统学习(四):Scala变量
变量是保存存储值的内存位置的名称.这意味着当创建变量时,可以在内存中保留一些空间. 根据变量的数据类型,编译器分配内存并决定可以存储在预留内存中的内容.因此,通过为变量分配不同的数据类型,可以在这些变 ...
- Scala系统学习(三):Scala基础语法
如果您熟悉Java语言语法和编程,那么学习Scala将会很容易.Scala和Java之间最大的句法差异在于行结束字符的分号(;) 是可选的. 当编写Scala程序时,它可以被定义为通过调用彼此的方法进 ...
- Scala系统学习(二):Scala开发环境安装配置
Scala可以安装在任何基于UNIX/Linux或基于Windows的系统上.在您的机器上开始安装Scala之前,必须在计算机上安装Java 1.8或更高版本. 下面请按照以下步骤安装Scala. 步 ...
- Scala系统学习(一):Scala概述
Scala是可扩展语言的缩写,是一种混合功能编程语言. 它由Martin Odersky创建. Scala顺利整合面向对象和函数式语言的功能. Scala被编译后在Java虚拟机上运行. 许多现有公司 ...
- Scala - 快速学习01 - Scala简介
Scala简介 Scala(Scalable Language)是一门多范式(multi-paradigm)编程语言,Scala的设计吸收借鉴了许多种编程语言的思想,具备面向对象编程.函数式编程等特性 ...
- 【Python系统学习02】数据类型与类型转换
一.数据类型 字符串 整数 浮点数 [补充中...] 1.字符串 str 字符串:英文string,简写str. name = '小石头:' print(name,'2019', '12', '24' ...
- Scala系统学习(五):Scala访问修辞符
本章将介绍Scala访问修饰符.包,类或对象的成员可以使用私有(private)和受保护(protected)的访问修饰符进行标注,如果不使用这两个关键字的其中一个,那么访问将被视为公开(public ...
- Java I/O系统学习四:标准IO
几乎所有学习Java的同学写的第一个程序都是hello world,使用的也都是System.out.println()这条语句来输出"hello world",我也不例外,当初学 ...
- Python学习(四) Python数据类型:序列(重要)
插播一下,先了解一下Python的数据类型,Python现有的数据类型有好多,最重要的有列表.元组.字典 列表:我觉得可以对应java中的数组 list=['physics', 'chemistry' ...
随机推荐
- listView优化方案
1.如果自定义适配器,那么在getView方法中要考虑方法传进来的参数contentView是否为null,如果为null就创建contentView并返回,如果不为null则直接使用.在这个方法中尽 ...
- php的session问题总结
1. 看文档发现,在session的configure option中有三个关于gc的,分别是: session.gc_probability "1" PHP_INI_ALL se ...
- c++ istream转换为std::string
std::istreambuf_iterator<char> eos; std::string s(std::istreambuf_iterator<char>(stream) ...
- mysql explain分析
通过explain可以知道mysql是如何处理语句,分析出查询或是表结构的性能瓶颈.通过expalin可以得到: 1. 表的读取顺序 2.表的读取操作的操作类型 3.哪些索引可以使用 4. 哪些索引被 ...
- isolinux.cfg 文件是干什么的
1. 首先光盘镜像也就是iso文件采用的是“ISO 9660 ”文件系统 . cd上的文件都存在这个简单的iso文件系统里,linux可以用mount -o loop 直接把*.iso文件mou ...
- laravel 查看sql
方法一: 我们有时候想测试一段代码生产的 SQL 语句,比如: 我们想看 App\User::all(); 产生的 SQL 语句,我们简单在 routes.php 做个实验即可: //app/Http ...
- 2016中国app年度排行榜:十大行业、25个领域、Top 500 和2017趋势预测
本文为猎豹全球智库联合猎豹移动大数据平台libra.科技顶尖媒体36kr联合发布,如需转载必须在文章开头注明“来源:猎豹全球智库”和作者姓名,且不得更改或增删文中所有信息. 本文作者:猎豹全球智库 容 ...
- jQuery的ajax跨域 Jsonp原理
1.Jsonp Jsonp(json with padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题. Jsonp是为了解决ajax跨域发送http请求出现的,利用S ...
- 23种设计模式之中介者模式(Mediator)
中介者模式是一种对象的行为型模式,通过一个中介对象来封装一系列的对象交互.中介者使得各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互.中介者对象的存在保证了对象结构上的稳 ...
- Python 基础知识(一)
1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...