Sei sulla pagina 1di 6

Tipos de datos en Java Almacenamiento de datos en variables.

El trabajo con datos es parte fundamental de cualquier programa, las variables y sus tipos se encargan de almacenar esa informacin y la memoria que es necesaria para gestionarlas. La manera mas habitual de declarar una variable siempre contiene dos elementos, el tipo de la variable y su nombre y terminando la declaracin con punto y coma. Pero tambin se puede declarar en una misma instruccin mas de una variable del mismo tipo siempre separadas por una coma, al igual que se puede inicializar una variable en el momento de declararla. Inicializar una variable consiste en almacenar un determinado valor en el espacio de memoria reservado para ella. int midato; tipoVariable nombre; int midato1 = 3, midato2 = 6,midato3 = 5; Los diferentes tipos de variables. Las variables en Java deben tener un tipo de dato asociado. El tipo de dato de esa variable indicara los valores que la variable puede contener y las operaciones que se pueden realizar con ella. Podemos diferenciar los datos en Java en dos categoras de datos principales: los tipos primitivos y los tipos referenciados. Los tipos primitivos contienen un slo valor e incluyen los tipos como los enteros, coma flotante, los caracteres, de tipo booleano etc... Los tipos referenciados se llaman as porque el valor de una variable de referencia es una referencia (un puntero) hacia el valor real. En Java tenemos los arrays, las clases y los interfaces como tipos de datos referenciados.

Enteros: Estos tipos son byte, short, int y long, que guardan el signo valor, estos representan un nmero y no pueden representar elementos fraccionarios. Esto puede ser un buen ejemplo de declaracin de tipos de datos enteros: public class enteros { public static void main(String[] arg) { byte midato1 = 1;

short midato2 = 100; int midato3 = 10000; long midato4 = 100000000; System.out .println("midato = " + midato1); .... } }

Nmeros en coma flotante: Estos son float y double y pueden almacenar nmeros en coma flotante y con signo, esto quiere decir que nos permiten representar nmeros decimales. Todos los literales de coma flotante son del tipo double salvo que se especifique lo contrario, por eso si se intenta asignar un literal en coma flotante a una variable de tipo float el compilador nos dar un error (tipos incompatibles): public class tipoDecinales { public static void main(String[] arg) { float valor; valor = 2.6; System.out .println("Valor del dato= " + valor); //esto dara un error. } } Esto se solucionara indicando que el valor 2.6 es de tipo float con una f al final 2.6f

El tipo Caracter: Estos son de tipo char, que almacena la representacin de los caracteres (letras o nmeros), un carcter esta almacenado en 16 bits, y siguen un estndar que es el Unicoide. Los caracteres en Java se pueden especificar de forma normal o con secuencias de escape, utilizando la barra invertida "\" seguida de una letra:( \r) o utilizando la barra invertida con una "u" seguida de un numero hexadecimal (\u0000d), en este caso hemos especificado la secuencia de escape \r y su cdigo unicoide correspondiente del retorno de carro. public class tipoCaracter {

public static void main(String[] arg) { char valor, valor1, valor2; valor = 'a'; // el literal de tipo carcter tiene que estar encerrado entre comillas simples. valor1 = 65; } }

El tipo booleano: Este solo guarda dos valores: verdadero (true) o falso(false), y no como ocurre en otros lenguajes que toman los valores 0 y 1. Generalmente su utilizacin es muy frecuente para determinar el flujo de los programas: public class tipoBoolean { public static void main(String[] arg) { boolean valor1, valor2 ; valor = true; valor1 = false; if (valor1){ System.out .println("valor1 = verdadero"); } else { System.out .println("valor1 = falso"); } } }

Tabla tipos de datos: Tipos de datos Nmeros enteros Byte Short 8-bit complemento a 2 16-bit complemento a 2 Entero de un Byte Entero corto Rango de valores Descripcin

Int Long Nmeros reales Float Doubl otros tipos Char Boolean

32-bit complemento a 2 64-bit complemento a 2

Entero Entero largo

32-bit IEEE 754 64-bit IEEE 754

Coma flotante de precisin simple Coma flotante de precisin doble

16-bit Caracter true o false

Un slo carcter Un valor booleano (verdadero o falso)

LA CLASE STRING Java posee gran capacidad para el manejo de cadenas dentro de sus clases String yStringBuffer . Un objeto String representa una cadena alfanumrica de un valor constante que no puede ser cambiada despus de haber sido creada. Un objetoStringBuffer representa una cadena cuyo tamao puede variar. Los Strings son objetos constantes y por lo tanto muy baratos para el sistema. La mayora de las funciones relacionadas con cadenas esperan valores String como argumentos y devuelven valores String. Hay que tener en cuenta que las funciones estticas no consumen memoria del objeto, con lo cual es ms conveniente usar Character que char. No obstante, char se usa, por ejemplo, para leer ficheros que estn escritos desde otro lenguaje. Existen muchos constructores para crear nuevas cadenas: String(); String( String str ); String( char val[] ); String( char val[],int offset,int count ); String( byte val[],int hibyte ); String( byte val[],int hibyte,int offset,int count ); Tal como uno puede imaginarse, las cadenas pueden ser muy complejas, existiendo muchas funciones muy tiles para trabajar con ellas y, afortunadamente, la mayora estn codificadas en la clase String . Funciones Bsicas La primera devuelve la longitud de la cadena y la segunda devuelve el carcter que se encuentra en la posicin que se indica en indice :

int length(); char charAt( int indice ); Funciones de Comparacin de Strings boolean equals( Object obj ); boolean equalsIgnoreCase( Object obj ); Lo mismo que equals() pero no tiene en cuenta maysculas o minsculas. int compareTo( String str2 ); Devuelve un entero menor que cero si la cadena es lxicamente menor que str2 . Devuelve cero si las dos cadenas son lxicamente iguales y un entero mayor que cero si la cadena es lxicamente mayor que str2 . Funciones de Comparacin de Subcadenas boolean regionMatch( int thisoffset,String s2,int s2offset,int len ); boolean regionMatch( boolean ignoreCase,int thisoffset,String s2, int s2offset,int 1 ); Comprueba si una regin de esta cadena es igual a una regin de otra cadena. boolean startsWith( String prefix ); boolean startsWith( String prefix,int offset ); boolean endsWith( String suffix ); Devuelve si esta cadena comienza o termina con un cierto prefijo o sufijo comenzando en un determinado desplazamiento. int indexOf( int ch ); int indexOf( int ch,int fromindex ); int lastIndexOf( int ch ); int lastIndexOf( int ch,int fromindex ); int indexOf( String str ); int indexOf( String str,int fromindex ); int lastIndexOf( String str ); int lastIndexOf( String str,int fromindex ); Devuelve el primer/ltimo ndice de un carcter/cadena empezando la bsqueda a partir de un determinado desplazamiento. String substring( int beginindex ); String substring( int beginindex,int endindex ); String concat( String str ); String replace( char oldchar,char newchar ); String toLowerCase(); String toUpperCase(); String trim(); Ajusta los espacios en blanco al comienzo y al final de la cadena. void getChars( int srcBegin,int srcEnd,char dst[],int dstBegin ); void getBytes( int srcBegin,int srcEnd,byte dst[],int dstBegin ); String toString(); char toCharArray(); int hashCode(); Funciones ValueOf

La clase String posee numerosas funciones para transformar valores de otros tipos de datos a su representacin como cadena. Todas estas funciones tienen el nombre devalueOf , estando el mtodo sobrecargado para todos los tipos de datos bsicos. Veamos un ejemplo de su utilizacin: String Uno = new String( "Hola Mundo" ); float f = 3.141592; String PI = Uno.valueOf( f ); String PI = String.valueOf( f ); // Mucho ms correcto Funciones de Conversin String valueOf( boolean b ); String valueOf( int i ); String valueOf( long l ); String valueOf( float f ); String valueOf( double d ); String valueOf( Object obj ); String valueOf( char data[] ); String valueOf( char data[],int offset,int count ); Usa arrays de caracteres para la cadena. String copyValueOf( char data[] ); String copyValueOf( char data[],int offset,int count ); Crea un nuevo array equivalente para la cadena. LA CLASE LONG Cada tipo numrico tiene su propia clase de objetos. As el tipo long tiene el objetoLong . De la misma forma que con la clase Character , se han codificado muchas funciones tiles dentro de los mtodos de la clase Long . Declaraciones La primera sentencia crear una variable long y la segunda un objeto Long: long l; Long L; Valores de Long.- Long.MIN_VALUE; Long.MAX_VALUE; Mtodos de Long String Long.toString( long l,int base ); String Long.toString( long l ); long L.parseLong( String s,int base ); long L.parseLong( String s ); Long Long.valueOf( String s,int base ); Long Long.valueOf( String s ); int L.intValue(); long L.longValue(); float L.floatValue(); double L.doubleValue(); String L.toString(); int L.hashCode(); boolean L.equals( Object obj ); En los mtodos toString() , parseInt() y valueOf() que no se especifica la base sobre la que se trabaja, se asume que es base 10 .

Potrebbero piacerti anche