Open In App
Related Articles

Data Types in Scala

Like Article
Save Article
Report issue

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:

DataTypeDefault valueDescription
BooleanFalseTrue or False
Byte08 bit signed value. Range:-128 to 127
Short016 bit signed value. Range:-215 to 215-1
Char‘\u000’16 bit unsigned unicode character. Range:0 to 216-1
Int032 bit signed value. Range:-231 to 231-1
Long0L64 bit signed value. Range:-263 to 263-1
Float0.0F32 bit IEEE 754 single-Precision float
Double0.0D64 bit IEEE 754 double-Precision float
StringnullA sequence of character
UnitCoinsides to no value.
NothingIt is a subtype of every other type and it contains no value.
AnyIt is a supertype of all other types
AnyValIt serve as value types.
AnyRefIt serves as reference types.

Note: Scala does not contain the concept of primitive type like in Java. For Example: 


// Scala program to illustrate Datatypes
object Test
def main(args: Array[String])
    var a: Boolean = true
    var a1: Byte = 126
    var a2: Float = 2.45673f
    var a3: Int = 3
    var a4: Short = 45
    var a5: Double = 2.93846523
    var a6: Char = 'A'
    if (a == true)
    println("byte:" + a1)
    println("float:" + a2)
    println("integer:" + a3)
    println("short:" + a4)
    println("double:" + a5)
    println("char:" + a6)




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”””

Last Updated : 18 Apr, 2023
Like Article
Save Article
Share your thoughts in the comments
Similar Reads