Vous êtes sur la page 1sur 11

TIPOS DE DATOS EN JAVA

Un dato siempre lleva asociado un tipo de dato, que determina el conjunto de valores que puede tomar. En Java toda la informacin que maneja un programa est representada por dos tipos principales de datos:
Tipo de dato Representacin Tamao (Bytes) Rango de Valores Valor por defecto Clase Asociada

byte

Numrico Entero con signo Numrico Entero con signo

-128 a 127 -32.768 a 32.767 -2147483648 a 2147483647 9223372036854775808 a 9223372036854775807

Byte

short

Short

int

Numrico Entero con signo Numrico Entero con signo

Integer

long

Long

float

Numrico en Coma flotante de precisin simple Norma IEEE 754

3.4x10-38 a 3.4x1038

0.0

Float

double

Numrico en Coma flotante de precisin doble Norma IEEE 754

8
308

1.8x10a 1.8x10308

0.0

Double

char boolean void

Carcter Unicode Dato lgico -

2 -

\u0000 a \uFFFF true false -

\u0000 false -

Character Boolean Void

DATOS NUMRICOS ENTEROS En Java los representan los tipos: byte, short, int, long. El tipo de dato numrico entero es un subconjunto finito de los nmeros enteros del mundo real. Pueden ser positivos o negativos. Ejemplo de declaracin de variables enteras: int a; byte n1, n2;

short x; DATOS NUMRICOS REALES En Java los representan los tipos: float, double. El tipo de dato numrico real es un subconjunto finito de los nmeros reales. Siempre llevan un punto decimal y tambin pueden ser positivos o negativos. Los nmeros reales tienen una parte entera y una parte decimal. Por ejemplo: 0.08 -54.0001

Ejemplo de declaracin de variables reales: float peso; double longitud; float altura = 2.5F; double area = 1.7E4; // equivale a 1.7 * 104 double z = .123; //si la parte entera es 0 se puede omitir DATOS DE TIPO CARCTER En Java se representa con el tipo char. Un dato de tipo carcter se utiliza para representar un carcter dentro del rango \u0000 a \uFFFF (nmeros desde 0 hasta 65535) en Unicode. En realidad un dato de tipo char contiene un nmero entero dentro del rango anterior que representa un carcter. En Java se utiliza el cdigo Unicode para la representacin de caracteres. Este cdigo actualmente representa los caracteres de la mayora de idiomas escritos en todo el mundo. Los 127 primeros caracteres de Unicode corresponden al cdigo ASCII. El Cdigo ASCII (American Standard Code for Information Interchange o Cdigo Estndar Americano para el Intercambio de Informacin) asigna valores numricos a las letras, nmeros, signos de puntuacin y algunos otros caracteres especiales. ASCII incluye 256 cdigos divididos en dos conjuntos, estndar y extendido, de 128 cada uno. El conjuntoASCII bsico, o estndar, utiliza 7 bits para cada cdigo, lo que da como resultado 128 cdigos de caracteres desde 0 hasta 127. El conjunto ASCII extendido utiliza 8 bits para cada cdigo, dando resultado 128 cdigos adicionales, numerados desde el 128 hasta el 255. como

En el conjunto de caracteres ASCII bsico, los primeros 32 valores estn asignados a los cdigos de control de comunicaciones y de impresora (caracteres no imprimibles) empleados para controlar la forma en que la informacin es transferida desde una computadora a otra o desde una computadora a una impresora. En este grupo estn los cdigos correspondientes a la barra espaciadora (SP por space), la tecla ENTER de retorno de carro a un nuevo rengln (CR por carry return), etc. Tambin existen caracteres de control usados en teleprocesamiento, como ser ACK (Acknowledge - aviso de mensaje recibido), BEL (bell - aviso por seal sonora), ETX (end of text fin de texto), STX (start of text comienzo de texto), etc. Los 96 cdigos restantes del cdigo bsico corresponden a los caracteres imprimibles y se asignan a los signos de puntuacin corrientes, a los dgitos del 0 al 9 y a las letras maysculas y minsculas del alfabeto latino. Los cdigos correspondientes al ASCII extendido, del 128 al 255, se asignan a aquellos caracteres que no pertenecen al alfabeto anglosajn, por ejemplo, las

vocales con tilde, la , y en general todos los caracteres especiales que utilizan los distintos lenguajes.

Debido a lo limitado de su tamao, el cdigo ASCII no es suficiente para representar caracteres de alfabetos como el Japons, Chino o rabe. La solucin a este problema ha sido crear un cdigo ms grande con el que poder representar cualquier carcter de cualquier idioma: el cdigo Unicode. El cdigo UNICODE proporciona una nica representacin numrica para cada smbolo, independientemente del ordenador, el programa o el lenguaje de programacin que se use. La codificacin Unicode se ha transformado en un estndar adoptado por las principales empresas dehardware y software. Java utiliza la codificacin Unicode. La descripcin completa del estndar y las tablas de caracteres estn disponibles en la pgina web oficial de Unicode http://www.unicode.org/. La referencia completa se publica, adems, en forma de libro impreso cada vez que se libera una nueva versin principal. La versin digital de este libro est disponible de forma gratuita. Ejemplo de declaracin de variables de tipo carcter: char car; char letra1 = 'z'; char letra = '\u0061'; //cdigo unicode del carcter a DATOS DE TIPO LGICO Se representan con el tipo boolean. Los datos de este tipo slo pueden contener dos valores: true (verdadero) false (falso). Ejemplo de declaracin de variables lgicas: boolean primero; boolean par = false; Los tipos de datos lgicos son tambin conocidos como booleanos en honor del matemtico ingls George Bool, que desarroll la teora conocida como lgebra de bool que fue la base para la representacin de los circuitos lgicos.

Tipos de datos simples Es uno de los conceptos fundamentales de cualquier lenguaje de programacin. Estos definen los mtodos de almacenamiento disponibles para representar informacin, junto con la manera en que dicha informacin ha de ser interpretada. Para crear una variable (de un tipo simple) en memoria debe declararse indicando su tipo de variable y su identificador que la identificar de forma nica. La sintaxis de declaracin de variables es la siguiente: TipoSimple Identificador1, Identificador2; Esta sentencia indica al compilador que reserve memoria para dos variables del tipo simple TipoSimple con nombres Identificador1 e Identificador2.

Los tipos de datos en Java pueden dividirse en dos categoras: simples y compuestos. Los simples son tipos nucleares que no se derivan de otros tipos, como los enteros, de coma flotante, booleanos y de carcter. Los tipos compuestos se basan en los tipos simples, e incluyen las cadenas, las matrices y tanto las clases como las interfaces, en general. Cada tipo de datos simple soporta un conjunto de literales que le pueden ser asignados, para darles valor. En este apartado se explican los tipos de datos simples (o primitivos) que presenta Java, as como los literales que soporta (sintaxis de los valores que se les puede asignar).
a.) Tipos de datos enteros

Se usan para representar nmeros enteros con signo. Hay cuatro tipos: byte, short, int y long.
Tipo byte short int long Tamao 1Byte (8 bits) 2 Bytes (16 bits) 4 Bytes (32 bits) 8 Bytes (64 bits)

Tipos de datos primitivos


El lenguaje de programacin es un lenguaje fuertemente tipado, esto significa que todas las variables deben ser declaradas antes de ser utilizadas. Esto implica establecer el tipo y el nombre de la variable, como ya hemos visto:
int gear = 1;

Al hacer esto le indicamos al programa que existe una variable llamada gear, que almacena datos numricos y que tiene un valor inicial de 1. El tipo de dato de una variable determina los valores que puede contener adems de las operaciones que se puede realizar sobre ella. El lenguaje de programacin Java incluye siete otros tipos de datos primitivos adems de int. Un tipo primitivo est predefinido por el lenguaje y se nombra con una palabra clave reservada. Los valores primitivos no comparten estado con otros valores primitivos. Los ocho tipos de datos primitivos incluidos en el lenguaje de programacin Java son:

Valores predeterminados No siempre es necesario asignar un valor cuando se declara un campo. El compilador fija un valor predeterminado razonable para los campos que se declaran pero no son inicializados. En general, este valor ser cero o null, dependiendo del tipo de dato. Sin embargo, fiarse de estos valores predeterminados se considera una mala costumbre en la programacin. La siguiente tabla resume los valores predeterminados para los tipos de dato que hemos mencionado anteriormente.
Tipo de dato byte short int long float double char Valor predeterminado (para campos) 0 0 0 0L 0.0f 0.0d '\u0000'

String (o cualquier objeto) null boolean false

Las variables locales son ligeramente distintas, el compilador nunca asigna un valor predeterminado a una variable local sin asignar. Si no puede inicializar su variable local donde se declara, asegrese de asignarle un valor antes de intentar usarla. Acceder a una variable local sin inicializar resutlar en un error a la hora de compilar.

Clases Envolventes
Java es un lenguaje de programacin orientado a objetos. Un programa Java debe contener objetos y las operaciones entre ellos. La nica excepcin a esto en un programa Java son los tipos de datos primitivos (int, double, char, etc.) Los tipos de datos primitivos no son objetos pero en ocasiones es necesario tratarlos como tales. Por ejemplo, hay determinadas clases que manipulan objetos

(ArrayList, HashMap, ). Para poder utilizar tipos primitivos con estas clases Java provee las llamadas clases envolventes tambin llamadas clases contenedoras o wrappers. Cada tipo primitivo tiene su correspondiente clase envolvente:

Tipo primitivo byte short int long float double char boolean

Clase Envolvente Byte Short Integer Long Float Double Character Boolean

Estas clases proporcionan mtodos que permiten manipular el tipo de dato primitivo como si fuese un objeto. Las conversiones entre los tipos primitivos y sus clases envolventes son automticas. No es necesario hacer un casting. Para realizarlas se utiliza el Boxing/Unboxing.

Boxing: Convertir un tipo primitivo en su clase Wrapper. Unboxing: Convertir un objeto de una clase Wrapper en su tipo primitivo. Ejemplo de Boxing: double x = 29.95; Double y; y = x; // boxing Ejemplo de Unboxing: double x; Double y = 29.95; x = y; // unboxing

Clase Integer En la siguiente tabla aparecen algunos mtodos de la clase Integer. El resto de clases envolventes correspondientes a tipos primitivos numricos tienen mtodos similares.

Integer(int valor)

Constructor a partir de un int Integer n = new Integer(20);

Integer(String valor) Constructor a partir de un String String s = "123456"; Integer a = new Integer(s);

int intValue() float floatValue() double doubleValue()

Devuelve el valor equivalente Integer n = new Integer(30); int x = n.intValue(); double y = n.doubleValue();

int parseInt(String s)

Mtodo esttico que devuelve un int a partir de un String. String s = "123456"; int z = Integer.parseInt(s);

String toBinaryString(int i) String toOctalString(int i) String toHexString(int i)

Mtodos estticos que devuelven un String con la representacin binaria, octal o hexadecimal del nmero. int numero = 12; String binario = Integer.toBinaryString(numero);

Integer valueOf(String s)

Mtodo Esttico. Devuelve un Integer a partir de un String.

Integer m = Integer.valueOf("123");

API de la Integer: http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html

clase

Clase Character

Provee una serie de mtodos para manipular los datos de tipo char. En la siguiente tabla aparecen algunos de estos mtodos.

Character(char c)

Constructor a partir de un char char car = 'x'; Character a = new Character(car);

char charValue()

Devuelve el char equivalente Character n = new Character('q'); char c = n.charValue();

boolean isLowerCase(char ch)boolean isUp perCase(char ch)


boolean isDigit(char ch) boolean isLetter(char ch)

Comprueba si es un carcter en minsculas. Comprueba si es un carcter en maysculas. Comprueba si es (carcter del 0 al 9). un dgito

Comprueba si es una letra. Todos son estticos. if(Character.isUpperCase(c)){ ..... }

char toLowerCase(char ch) char toUpperCase(char ch)

Devuelve el char en maysculas. Devuelve el char en minsculas. Mtodos estticos. char car = 'u'; System.out.println(Character.toUp perCase(car));

Character valueOf(char c)

Mtodo Esttico. Devuelve Character a partir de un char. Character m Character.valueOf('a');

un

API de la clase Character: http://docs.oracle.com/javase/7/docs/api/java/lang/Character.html Ejemplo de uso de la clase Character: programa que lee un texto por teclado y muestra cuntos dgitos y letras contiene. import java.util.Scanner; public class JavaApplication325 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String texto; int cuentaCifras = 0, cuentaLetras = 0; System.out.println("Introduce texto "); texto = sc.nextLine(); for (int i = 0; i < texto.length(); i++) { if (Character.isDigit(texto.charAt(i))) { cuentaCifras++; } else if (Character.isLetter(texto.charAt(i))) { cuentaLetras++; } } System.out.println("El texto contiene " + cuentaCifras + " dgitos"); System.out.println("El texto contiene " + cuentaLetras + " letras"); } }

Ejemplos

String: tipo de datos cadena de caracteres String <nombre_variable> [= "<cadena de caracteres>"];


String s1 = "hola"; String s2 = "adios"; String s3 = s1 + " y " + s2 + " : " + 2004;

Existe una clase equivalente para cada tipo de dato simple Tipo Simple Clase Equivalente byte, short, int, long Integer, Long float, double boolean Boolean Number, Byte, Short,

Number, Float, Double

char Character o Estas clases poseen constantes y mtodos que pueden ser tiles Ejemplos: int i = 4; // "i" es una variable entera (tipo simple) // "j" es un objeto de la clase Integer (envolvente) Integer j = new Integer(5);

INTEGRANTES:
MONTOYA OLIVO BORIS BERECHEZ SAMANIEGO JHON CHANCAY NARANJO CHRISTIAN BENETT RUTH PEAFIEL JORGE

CURSO: GRUPO: MATERIA:

3ER NIVEL

PROGRAMACION ORIENTADA A OBJETOS

Vous aimerez peut-être aussi