Data Types in Scala
Last Updated :
18 Apr, 2023
A data type is a categorization of data which tells the compiler that which type of value a variable has. For example, if a variable has an int data type, then it holds numeric value. In Scala, the data types are similar to Java in terms of length and storage. In Scala, data types are treated same objects so the first letter of the data type is in capital letter. The data types that are available in Scala as shown in the below table:
DataType |
Default value |
Description |
Boolean |
False |
True or False |
Byte |
0 |
8 bit signed value. Range:-128 to 127 |
Short |
0 |
16 bit signed value. Range:-215 to 215-1 |
Char |
‘\u000’ |
16 bit unsigned unicode character. Range:0 to 216-1 |
Int |
0 |
32 bit signed value. Range:-231 to 231-1 |
Long |
0L |
64 bit signed value. Range:-263 to 263-1 |
Float |
0.0F |
32 bit IEEE 754 single-Precision float |
Double |
0.0D |
64 bit IEEE 754 double-Precision float |
String |
null |
A sequence of character |
Unit |
– |
Coinsides to no value. |
Nothing |
– |
It is a subtype of every other type and it contains no value. |
Any |
– |
It is a supertype of all other types |
AnyVal |
– |
It serve as value types. |
AnyRef |
– |
It serves as reference types. |
Note: Scala does not contain the concept of primitive type like in Java. For Example:
Scala
object Test
{
def main(args : Array[String])
{
var a : Boolean = true
var a 1 : Byte = 126
var a 2 : Float = 2.45673 f
var a 3 : Int = 3
var a 4 : Short = 45
var a 5 : Double = 2.93846523
var a 6 : Char = 'A'
if (a == true )
{
println("boolean : geeksforgeeks")
}
println("byte : " + a 1 )
println("float : " + a 2 )
println("integer : " + a 3 )
println("short : " + a 4 )
println("double : " + a 5 )
println("char : " + a 6 )
}
}
|
Output:
boolean:geeksforgeeks
byte:126
float:2.45673
integer:3
short:45
double:2.93846523
char:A
Literals in Scala : Here we will discuss different types of literals used in Scala.
- Integral Literal: These are generally of int type or long type (“L” or “I” suffix used ). Some legal integral literals are:
02 0 40 213 0xFFFFFFFF 0743L
- Floating-point Literals: These are of float type(“f” or”F” suffix used ) and of double type.
0.7 1e60f 3.12154f 1.0e100 .3
- Boolean Literals: These are of Boolean type and it contains only true and false.
- Symbol Literals: In Scala, symbol is a case class. In symbol literal, a’Y’ is identical to scala.Symbol(“Y”).
package scala final case class Symbol private (name: String) { override def toString: String = “‘” + name }
- Character Literals: In Scala, character literal is a single character that is encircled between single quotes.There characters are printable unicode character and also described by the escape character. Few valid literals are shown below:
‘\b’ ‘a’ ‘\r’ ‘\u0027’
- String Literals: In Scala, string literals are the sequence of character that are enclosed between double quotes. Some valid literals as shown below:
“welcome to \n geeksforgeeks” “\\This is the tutorial of Scala\\”
- Null Values: In Scala, null value is of scale.Null type, that’s the way it is adaptable with every reference type. It is indicated as a reference value which refers to a special “null” object.
- Multi-line Literals: In Scala, multi-line literals are the sequence of characters that are encircled in between triple quotes. In this new line and other control characters are valid. Some valid multi-line literals shown below:
“””welcome to geeksforgeeks\n this is the tutorial of \n scala programming language”””
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...