Un tipo de datos es una categorización de datos que le dice al compilador qué tipo de valor tiene una variable. Por ejemplo , si una variable tiene un tipo de datos int, entonces tiene un valor numérico. En Scala, los tipos de datos son similares a Java en términos de longitud y almacenamiento. En Scala, los tipos de datos se tratan como los mismos objetos, por lo que la primera letra del tipo de datos está en mayúscula.
Los tipos de datos que están disponibles en Scala como se muestra en la siguiente tabla:
Tipo de datos | Valor por defecto | Descripción | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
booleano | Falso | Verdadero o falso | ||||||||||||
Byte | 0 | Valor con signo de 8 bits. Rango: -128 a 127 | ||||||||||||
Corto | 0 | Valor con signo de 16 bits. Rango:-2 15 a 2 15 -1 | ||||||||||||
Carbonizarse | ‘\u000’ | Carácter Unicode de 16 bits sin firmar. Rango:0 a 2 16 -1 | ||||||||||||
En t | 0 | Valor con signo de 32 bits. Rango: -2 31 a 2 31 -1 | ||||||||||||
Largo | 0L | Valor con signo de 64 bits. Rango: -2 63 a 2 63 -1 | ||||||||||||
Flotar | 0.0F | Flotador de precisión simple IEEE 754 de 32 bits | ||||||||||||
Doble | 0.0D | Flotador de doble precisión IEEE 754 de 64 bits | ||||||||||||
Cuerda | nulo | Una secuencia de caracteres | ||||||||||||
Unidad | – | Coinsides sin valor. | Nada | – | Es un subtipo de cualquier otro tipo y no contiene ningún valor. | Ningún | – | Es un supertipo de todos los demás tipos. | CualquierVal | – | Sirve como tipos de valor. | CualquierRef | – | Sirve como tipos de referencia. |
Nota: Scala no contiene el concepto de tipo primitivo como en Java.
Por ejemplo:
// 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("boolean:geeksforgeeks") } println("byte:" + a1) println("float:" + a2) println("integer:" + a3) println("short:" + a4) println("double:" + a5) println("char:" + a6) } }
Producción:
boolean:geeksforgeeks byte:126 float:2.45673 integer:3 short:45 double:2.93846523 char:A
Literales en Scala : aquí discutiremos los diferentes tipos de literales utilizados en Scala.
- Literales Integrales: Generalmente son de tipo int o de tipo largo (se usa el sufijo “L” o “I”). Algunos literales integrales legales son:
02
0
40
213
0xFFFFFFFF
0743L - Literales de coma flotante: son de tipo flotante (se usa el sufijo “f” o “F”) y de tipo doble.
0.7
1e60f
3.12154f
1.0e100
.3 - Literales booleanos: son de tipo booleano y solo contienen verdadero y falso.
- Literales de símbolo: en Scala, el símbolo es una clase de caso. En el símbolo literal, a’Y’ es idéntico a scala.Symbol(“Y”).
paquete scala
caso final clase Símbolo privado (nombre: String) {
invalidar def toString: String = “’” + nombre
} - Literales de caracteres: en Scala, el literal de carácter es un carácter único que está encerrado entre comillas simples. Estos caracteres son caracteres Unicode imprimibles y también se describen mediante el carácter de escape. A continuación se muestran algunos literales válidos:
‘\b’
‘a’
‘\r’
‘\u0027’ - Literales de string: en Scala, los literales de string son la secuencia de caracteres que se encierran entre comillas dobles. Algunos literales válidos como se muestra a continuación:
“bienvenido a \n geeksforgeeks”
“\\Este es el tutorial de Scala\\” - Valores nulos: En Scala, el valor nulo es de escala. Tipo nulo, de esa manera es adaptable con cada tipo de referencia. Se indica como un valor de referencia que se refiere a un objeto especial «nulo».
- Literales de varias líneas: en Scala, los literales de varias líneas son la secuencia de caracteres que se encierran entre comillas triples. En esta nueva línea y otros caracteres de control son válidos. Algunos literales multilínea válidos se muestran a continuación:
“””bienvenido a geeksforgeeks\n
este es el tutorial de \n
lenguaje de programación scala”””
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA