Clojure - Tipos de datos
Clojure ofrece una amplia variedad de built-in data types.
Tipos de datos integrados
A continuación se muestra una lista de los tipos de datos que se definen en Clojure.
Integers - A continuación se muestra la representación de los números enteros disponibles en Clojure.
Decimal Integers (Short, Long and Int)- Se utilizan para representar números enteros. Por ejemplo, 1234.
Octal Numbers- Se utilizan para representar números en representación octal. Por ejemplo, 012.
Hexadecimal Numbers- Se utilizan para representar números en representación. Por ejemplo, 0xff.
Radix Numbers- Se utilizan para representar números en representación de base. Por ejemplo, 2r1111 donde la base es un número entero entre 2 y 36, inclusive.
Floating point
El valor predeterminado se utiliza para representar números de coma flotante de 32 bits. Por ejemplo, 12.34.
La otra representación es la notación científica. Por ejemplo, 1.35e-12.
char- Esto define un solo carácter literal. Los caracteres se definen con el símbolo de reacción. Por ejemplo, / e.
Boolean - Esto representa un valor booleano, que puede ser verdadero o falso.
String- Son literales de texto que se representan en forma de cadena de caracteres. Por ejemplo, "Hola mundo".
Nil - Esto se usa para representar un valor NULL en Clojure.
Atom- Los átomos proporcionan una forma de gestionar el estado independiente, sincrónico y compartido. Son un tipo de referencia como refs y vars.
Valores vinculados
Dado que todos los tipos de datos en Clojure se heredan de Java, los valores delimitados son los mismos que en el lenguaje de programación Java. La siguiente tabla muestra los valores máximos permitidos para los literales numéricos y decimales.
literales | Rangos |
---|---|
Corto | -32.768 hasta 32.767 |
En t | -2,147,483,648 a 2,147,483,647 |
largo | -9,223,372,036,854,775,808 a +9,223,372,036,854,775,807 |
flotador | 1.40129846432481707e-45 a 3.40282346638528860e + 38 |
doble | 4.94065645841246544e-324d a 1.79769313486231570e + 308d |
Tipos numéricos de clase
Además de los tipos primitivos, se permiten los siguientes tipos de objetos (a veces denominados tipos de envoltura).
Nombre |
---|
java.lang.Byte |
java.lang.Short |
java.lang.Integer |
java.lang.Long |
java.lang.Float |
java.lang.Double |
Ejemplo
El siguiente programa muestra un código clojure consolidado para demostrar los tipos de datos en Clojure.
(ns clojure.examples.hello
(:gen-class))
;; This program displays Hello World
(defn Example []
;; The below code declares a integer variable
(def x 1)
;; The below code declares a float variable
(def y 1.25)
;; The below code declares a string variable
(def str1 "Hello")
(println x)
(println y)
(println str1))
(Example)
Salida
El programa anterior produce la siguiente salida.
1
1.25
Hello