noviembre 04, 2011

Carácter en Java

He notado que casi no se habla del tipo de dato char (en java), esa es la razón de mi publicación, El tipo de datos char de Java se utiliza para representar un carácter, éste tipo emplea 16 bits para el almacenamiento de un carácter y lo efectúa en formato
Unicode, Un literal carácter representa un carácter o una secuencia de escape encerrada
entre comillas simples. Por ejemplo, 'c' , 'd'. Entonces se llega a esta definición: Un carácter es un Único carácter encerrado entre comillas simples.

Para almacenar un carácter, se almacena el código numérico que lo representa;
por tanto, internamente los caracteres son números y esto capacita a Java para realizar
algunas operaciones numéricas con datos de tipo char.

Ejemplo:
/**
* Archivo: Caracter.java
* @author Bello Cerecero
* @version 1.0
* @since 04/11/2011
*/
public class Caracter
{
  public static void main(String[] args)
  {
    char caracter;

    caracter = 'a';
    System.out.println("El carácter es ") ;
    System.out.println(caracter) ;

    caracter = 'a' - 32;
    System.out.println("Ahora el carácter es") ;
    System.out.println(caracter) ;

    caracter++;
    System.out.println("Ahora el carácter es");
    System.out.println(caracter);
  }
}

Para empezar declaramos una variable de tipo char a la que le llamamos caracter (linea 11), ahora en la linea 13 inicalizamos a la variable caracter con 'a', en las dos lineas posteriores (14 y 15) imprimimos en consola el valor de caracter, en la linea 17 a caracter le asignamos el valor de 'a' y le restamos 32, aquí lo que esta pasando es que como en Unicode cada carácter tiene un respectivo numero, a la posicion en la que se encuentra 'a' ira 32 lugares atras y ahora caracter tendrá el valor del carácter que se encuentre 32 posiciones mas atras que 'a', en las dos lineas posteriores (18 y 19). En la linea 21 a la variable caracter de sumamos uno (++) y ahora la variable caracter contendra el valor del carácter que esta una posicion mas adelante que el carácter 'a'.


La salida del programa es la siguiente:
Loading...