Foros del Web » Programación para mayores de 30 ;) » Java »

convertir objeto en primitivo

Estas en el tema de convertir objeto en primitivo en el foro de Java en Foros del Web. Hola amigos, es posible convertir un tipo de variable objeto, creado por mi, a una variable de tipo int. Si es así alguien me indica, ...
  #1 (permalink)  
Antiguo 06/05/2015, 11:08
 
Fecha de Ingreso: agosto-2008
Mensajes: 606
Antigüedad: 15 años, 8 meses
Puntos: 11
convertir objeto en primitivo

Hola amigos, es posible convertir un tipo de variable objeto, creado por mi, a una variable de tipo int.

Si es así alguien me indica, por favor. gracias
  #2 (permalink)  
Antiguo 06/05/2015, 14:45
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 10 meses
Puntos: 13
Respuesta: convertir objeto en primitivo

un int solo puede tomar valores enteros de hasta 32 bits.

Si tu objeto sólo tiene una variable estática entera, sí, puedes transformarlo:

Código Java:
Ver original
  1. public class Poligono {
  2.     private final int num_lados;
  3.    
  4.     public Poligono(int num_lados){
  5.         this.num_lados = num_lados;
  6.     }
  7.    
  8.     public int getNumLados(){
  9.         return this.num_lados;
  10.     }
  11.    
  12.    
  13. }

Código Java:
Ver original
  1. [...]
  2. public void run(){
  3.     Poligono obj_cuadrado = new Poligono(4);
  4.    
  5.     int prim_cuadrado = obj_cuadrado.getNumLados();
  6.  
  7. }
  8. [...]

Supongamos que la variable del objeto no fuera un int y lo quisieras pasar a int.

LONG A INT: Aquí tendrías que hacer un CAST (mutilación ya que LONG es de 64bits e INT es de 32):
Código Java:
Ver original
  1. int prim_cuadrado = (int) obj_cuadrado.getNumLados();

BYTE O SHORT A INT: Como byte y short son ambos SIGNED (como INT) y son de menor longitud que INT (8 y 16 respectivamente), simplemente se establece el numero en los bits más a la derecha y se extiende el signo en el resto de bits. Puedes hacerla de forma normal.

CHAR A INT: Ésta es algo más complicada de entender. Char es UNSIGNED pero Int es SIGNED. Java establece los números en complemento a 2. El primer numero indica el signo.
Pero, si no tiene signo y el CHAR fuera 255 (11111111), extendería ese 1 situando el valor a (2^16)-1? No, en este caso Java es inteligente y simplemente lo rellena de ceros.
Puedes hacerla tambien de forma normal.

Última edición por BanNsS1; 06/05/2015 a las 14:57
  #3 (permalink)  
Antiguo 07/05/2015, 07:13
 
Fecha de Ingreso: agosto-2008
Mensajes: 606
Antigüedad: 15 años, 8 meses
Puntos: 11
Respuesta: convertir objeto en primitivo

Gracias lo probaré a ver que tal.
  #4 (permalink)  
Antiguo 07/05/2015, 11:58
 
Fecha de Ingreso: junio-2009
Mensajes: 101
Antigüedad: 14 años, 10 meses
Puntos: 13
Respuesta: convertir objeto en primitivo

Cita:
Iniciado por trevol Ver Mensaje
Gracias lo probaré a ver que tal.
Nada hombre!

Etiquetas: objeto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:12.