Java utiliza clases para implementar todas las características del lenguaje; sin embargo, por razones de rendimiento, incorpora algunos tipos de datos que se conocen como «primitivos»: que incluyen números enteros (byte, short, int y long) y con punto decimal (float y double) con distintas precisiones (o número de bits para su representación), que en el caso de java siempre tienen signo (números positivos y negativos). Además de los tipos: boolean (almacenan verdadero o falso, true o false) y caracteres Unicode (char) para la representación de textos.
Primitivos | Enteros $\mathbb{Z}$ |
byte | Byte (8 bits) |
---|---|---|---|
short | Entero corto (16 bits) | ||
int | Entero (32 bits) | ||
long | Entero largo (64 bits) | ||
Punto flotante $\mathbb{R}$ |
float | Punto flotante de 32 bits (estándar IEEE 754). En Java se requiere poner una letra “f” al final de una constante numérica (p.ej. 5.6f, 0f, 1.56E10f) para distinguirla de una constante de tipo double. | |
double | Punto flotante de doble precisión de 64 bits (estándar IEEE 754) | ||
Otros | boolean | Falso (false) o Verdadero (true) | |
char | Un carácter de 16 bits, codificación Unicode | ||
Clases | String | Se utiliza para representar textos o variables alfanuméricas. También se conoce como “cadena” de caracteres, de ahí su nombre “String”. | |
Integer | Se utilizan para declarar números enteros (negativos, cero y positivos), corresponden ubicados entre Integer.MIN_VALUE e Integer.MAX_VALUE y cuentan con un tamaño en bits de Integer.SIZE | ||
Double | Se utilizan para declarar números con punto decimal, corresponden ubicados entre Double.MIN_VALUE e Double.MAX_VALUE y cuentan con un tamaño en bits de Double.SIZE. Es importante notar: Double.NaN: Es una constante que representa que el valor almacenado no es un valor Double. Double.NEGATIVE_INFINITY: representa $-\infty$ Double.POSITIVE_INFINITY: representa $+\infty$ |
||
Object | Contiene la definición de la Clase básica de la que se derivan todas las clases de Java. | ||
Definidas por el usuario | Triángulo, Ecuacion2oGrado, TablaMultiplicar, Computadora, CuentaBancaria, … |
A continuación se describe el uso de operadores y algunos símbolos importantes del lenguaje:
-
Símbolos y operadores
Incremento y decremento, puede ir antes o después de una variable.
Su uso se sugiere como una sola instrucción (i++; o ++i;) aunque puede escribirse dentro de una expresión más compleja. Si el operador de incremento va previo a la variable, se incrementa y luego se operan el resto de la función matemática; si es posfijo, se realiza la operación con el valor que se tiene, se opera la asignación y después se incrementa la variable.
-
Números enteros
Valores válidos por número de bits de los enteros:
byte 8 bits –128 a 127 short 16 bits –32,768 a 32,767 int 32 bits –2,147,483,648 a 2,147,483,647 long 64 bits –9,223,372,036,854,775,808 a 9,223,372,036,854,775,807 -
Números con punto decimal
El lazo de regreso indica que después de escribir un dígito decimal, pueden ponerse más dígitos; siempre y cuando los números se encuentren en los rangos válidos de acuerdo al número de bits del número. No se usan separaciones por comas:
También hay que tener en cuenta que normalmente se expresan las cantidades en notación científica donde la “E” que aparece se sustituye por “por 10 elevado a”:
3.14E4 sería: $3.14 \times 10^4$
-1.0E-6 sería: $-1.0 \times 10^{-6}$ = -0.000001
0.0625 = 6.25 × 10-2 sería codificado en Java como 6.25E-2
Valores válidos por número de bits de los enteros:
double 64 bits ±4.94065645841246544E–324 a ±1.7976931348623157E308 float 32 bits ±1.40239846E-45 a ±3.40282347E38 Observa como hay una mayor precisión expresada en dígitos después del punto decimal, el resto se redondeará al número más cercano representable por el número de bits
-
Caracteres
Las constantes de caracteres utilizan para representar un carácter en el sistema de codificación UNICODE (el estandar Unicode y las especificaciones asociadas proveen a los programadores de una manera sencilla con una codificación en bits de los símbolos estandarizados —letras, números, símbolos de puntuación, emojis, etc.)
Se inicia y termina con una comilla sencilla (cuida que se vea recta, algunos editores las convierten en tipográficas y se ven medio redondeadas), y en medio se escribe un carácter o un símbolo. Opcionalmente, se puede utilizar la representación hexadecimal del carácter iniciando con la secuencia \u
Originalmente se utilizaba el código ASCII y algunos símbolos dependiendo del país o región del mundo, en los que se ocupaban 8 bits para su representación. Actualmente los caracteres se definen con el estándar de UNICODE y pueden almacenarse en 8 o 16 bits.
Ejemplos:
'0', '\u0030' (representa el carácter del dígito cero ‘0’).
'@', '\u0040' (código hexadecimal para el número 64 que representa a la arroba).
'A', '\u0041' (código hexadecimal para el número 65 que representa a la ‘A’ mayúscula), etc.
-
Identificadores
En términos generales Java sigue las siguientes convenciones para identificadores:
• Clases: empiezan con mayúscula, van capitalizados y son sustantivos en singular que describen una abstracción.
• Atributos: empiezan con minúscula, van capitalizados y son sustantivos en singular que identifican partes que tienen cada instancia de una clase.
• Métodos: empiezan con minúscula, van capitalizados y son verbos en singular que describen acciones de la clase.
• Constantes: van en mayúsculas son adjetivos calificativos o sustantivos y se escriben en mayúsculas, si hay varias palabras se separan con un guion largo o bajo.
Ya que los identificadores no incluyen el símbolo de espacio, se utiliza la capitalización cuando haya varias palabras. Se entiende por capitalizar, separar las palabras iniciando con mayúscula cada una de ellas. Por ejemplo un identificador para indicar que algo se llama “eje transversal” sería ejeTransversal.