scala基础_数据类型概览

Scala 数据类型

下表列出了 Scala 支持的数据类型:

类型类别 数据类型 描述 Scala标准库中的实际类
基本类型 Byte 8位有符号整数,数值范围为 -128 到 127 scala.Byte
基本类型 Short 16位有符号整数,数值范围为 -32768 到 32767 scala.Short
基本类型 Int 32位有符号整数,数值范围为 -2147483648 到 2147483647 scala.Int
基本类型 Long 64位有符号整数,数值范围为 -9223372036854775808 到 9223372036854775807 scala.Long
基本类型 Float 32位IEEE 754单精度浮点数 scala.Float
基本类型 Double 64位IEEE 754双精度浮点数 scala.Double
基本类型 Char 16位无符号Unicode字符,数值范围为 U+0000 到 U+FFFF scala.Char
基本类型 String 字符串类型,表示字符序列 java.lang.String
基本类型 Boolean 布尔类型,值为 truefalse scala.Boolean
集合类型 List 不可变链表 scala.collection.immutable.List
集合类型 Set 不可变集合 scala.collection.immutable.Set
集合类型 Map 不可变键值对集合 scala.collection.immutable.Map
集合类型 Array 可变数组 scala.Array
集合类型 Tuple 可包含不同类型元素的不可变容器 scala.TupleN
集合类型 Option 代表有可能含有值或为空的容器 scala.Option
集合类型 Either 表示两种可能的值类型之一 scala.util.Either
集合类型 Try 处理操作结果可能成功或失败的容器 scala.util.Try
特殊类型 Unit 表示无值,相当于Java中的 void scala.Unit
特殊类型 Null 单例对象,表示所有引用类型的空值 scala.Null
特殊类型 Nothing 表示无返回值类型,是所有类型的子类型 scala.Nothing
特殊类型 Any 所有类型的超类型 scala.Any
特殊类型 AnyRef 所有引用类型的超类型,等价于Java中的 Object scala.AnyRef
scala 复制代码
import scala.util.{Try}

object DataObject {
  def main(args:Array[String]):Unit = {
    // 基本数据类型整形
    // 8位
    val byteValue: Byte = -128
    // 16位
    val shortValue: Short = 32767
    // 32位置
    val intval: Int = 2147483647
    // 64位置
    val longValue: Long =9999999999999999L
    // 打印输出
    println(byteValue)
    println(shortValue)
    println(intval)
    println(longValue)

    //浮点型
    // 32位
    val floatValue: Float = 0.333333333333333f
    // 64位
    val doublevalue: Double = 0.33333666699999988877
    println(floatValue)
    println(doublevalue)

    //字符类型
    // 单一字符 单引号包围 可变
    val charvalue:Char = 'A'
    // 字符序列 双引号包围 不能修改其中的单个字符
    val stirngvalue:String = "abcdefg"
    println(charvalue)
    println(stirngvalue)

    //布尔值
    val boolvalue:Boolean = true
    val boolvalue2:Boolean = false
    print(boolvalue); println(boolvalue2)

    //集合类型
    // 不可变链表
    val listValue: List[Any] = List(1,2,3,4,"ldsx")
    // 不可变集合
    val setvalue:Set[Int] = Set(1,1,1,1,2,3,33)
    // 不可变键值对集合
    val mapvalue: Map[Any,Any] = Map("LDSX"->123,123->"6666","bl"->654)
    // 可变数组
    val arrayvalue:Array[Int] = Array(6584,456,555)
    // 元组 可包含不同类型元素的不可变容器
    val tuplevalue:(Any) = (1,3,4,5)
    // 代表有可能含有值或为空的容器
    val optionvalue:Option[String] = Some("AS WE KNOW")
    // 表示两种可能的值类型之一
    val eithervalue:Either[Any,Any] = Right(42)
    // 处理操作结果可能成功或失败的容器
    val  tryvalue:Try[Int] = Try(6)

    println(listValue)
    println(setvalue)
    println(mapvalue)
    println(arrayvalue)
    println(tuplevalue)
    println(optionvalue)
    println(eithervalue)
    println(tryvalue)

    //特殊类型

    //表示无值
    val unitvalue: Unit = ()
    // 单例对象,表示所有引用类型的空值
    val nullvalue: String= null

    println(unitvalue)
    println(nullvalue)

  }
}

打印显示

-128
32767
2147483647
9999999999999999
0.33333334
0.33333666699999986
A
abcdefg
truefalse


List(1, 2, 3, 4, ldsx)
Set(1, 2, 3, 33)
Map(LDSX -> 123, 123 -> 6666, bl -> 654)
[I@4de8b406
(1,3,4,5)
Some(AS WE KNOW)
Right(42)
Success(6)


()
null
相关推荐
Dxy12393102168 分钟前
python制造一个报错
开发语言·python
流星白龙12 分钟前
【C++算法】41模拟_外观数列
开发语言·c++·算法
小丸子灬1 小时前
clipboard----封装复制组件
开发语言·javascript
小萌新~~~~2 小时前
在Scala中正则表达式的类型
开发语言·正则表达式·scala
洋芋爱吃芋头2 小时前
scala的泛型2
开发语言·后端·scala
古拉拉明亮之神2 小时前
Scala的链式风格
scala·命令模式·代码规范·源代码管理
悻运2 小时前
scala的泛型类
开发语言·后端·scala
2401_833788052 小时前
Scala函数的泛型
开发语言·后端·scala
一棵开花的树,枝芽无限靠近你2 小时前
【PPTist】历史记录功能
前端·笔记·学习
licy__3 小时前
Vue 2 中 v-text 和 v-html 指令的使用详解
开发语言·前端·javascript