elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 23:38  


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  printf() Problemas con el formato
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: printf() Problemas con el formato  (Leído 2,365 veces)
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
printf() Problemas con el formato
« en: 19 Noviembre 2010, 10:34 »

¡Buenas! He intentado usar esta clase, y me daba error al convertir int y double, al principio pensé que era que me faltaba la clase en el eclipse pero no, porque dejé una parte del código escrito así, sin querer:
Código
    public void visualizar()
   {
    super.visualizar();
    System.out.printf("\nPrecio: %f",precio);
    System.out.printf("\nHipoteca: %b",hipoteca);
    System.out.printf("\nCantidad: %d",cantidad);
   }
Y me mostró el precio y la hipoteca.

Entonces es obvio que es un problema de que no convierto bien, estuve leyendo la documentación del Formatter y no encontré como pasar un int, los int que salen son el base 8 y en base 16, además, me fije que el f no devuelve un float, sino un decimal, pero no hay forma de convertir a float, así que supongo que si se ha tragado el f estará bien. Si consigo averiguar cómo castear cada tipo de dato haré una mini guía para el foro :/


En línea

Debci
Moderador
***
Desconectado Desconectado

Mensajes: 1.945


Actualizate o muere!


Ver Perfil WWW
Re: printf() Problemas con el formato
« Respuesta #1 en: 20 Noviembre 2010, 00:11 »

Existen dos tipos de casts:

-Explícitos (en la misma expresión):
Código
int numero1 = 1;
long numero2 = (long)numero1;

-Casts de método, es decir, una cambio a través de una función proporcionada por la clase poseedora:

Código
//Con esto convertimos una cadena a un entero
Integer.parseInt("61762");

Saludos


« Última modificación: 20 Noviembre 2010, 12:01 por Debci » En línea

Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: printf() Problemas con el formato
« Respuesta #2 en: 20 Noviembre 2010, 00:19 »

mmm no era,
Código
String.valueOf(5);
En línea

---
Debci
Moderador
***
Desconectado Desconectado

Mensajes: 1.945


Actualizate o muere!


Ver Perfil WWW
Re: printf() Problemas con el formato
« Respuesta #3 en: 20 Noviembre 2010, 12:02 »

Cierto, una errata de las horas nocturnas, corregido :D

Saludos
En línea

KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: printf() Problemas con el formato
« Respuesta #4 en: 20 Noviembre 2010, 16:14 »

Ya se que existen dos tipos de cast, pero eso no resolvió mi duda :/ Se convertir datos, hasta ahí llego, pero no se qué iniciales se utilizan en la clase formatter que es para en un String agregar datos de otro tipo. Se supone que se utiliza esta expresión:
%[argument_index$][flags][width][.precision]conversion

Y mirando la documentación, no logré averiguar qué se pone para el tipo int, por ejemplo. Está aqui:

http://download.oracle.com/javase/6/docs/api/

A ver si así queda más clara mi duda.
« Última modificación: 20 Noviembre 2010, 16:20 por KuraraGNU » En línea

xassiz~


Desconectado Desconectado

Mensajes: 428



Ver Perfil WWW
Re: printf() Problemas con el formato
« Respuesta #5 en: 20 Noviembre 2010, 18:03 »

%i
En línea

Darhius


Desconectado Desconectado

Mensajes: 427


Divide y vencerás.


Ver Perfil
Re: printf() Problemas con el formato
« Respuesta #6 en: 20 Noviembre 2010, 18:09 »

Hola que tal.

Intentas hacer

Código
System.out.printf("numero es %01d\n", 5 );

 :huh:

en tu caso sería.

Código
System.out.printf("\nCantidad: %01d\n",cantidad);

Citar
%i
  :huh: :rolleyes:

Un saludo.
« Última modificación: 20 Noviembre 2010, 18:13 por Darhius » En línea

"Cuenta mi historia... a quienes pregunten, cuéntala con verdad, las cosas malas junto con las buenas  y permite que sea juzgado apegado ellas... el resto... es silencio." Dinobot (Beast Wars Transformers)
KuraraGNU

Desconectado Desconectado

Mensajes: 209



Ver Perfil
Re: printf() Problemas con el formato
« Respuesta #7 en: 2 Diciembre 2010, 13:38 »

@Darhius ¡Perdona por tardar tanto en contestar! :D Ya vi lo que me decías y creo que ya resolví mi duda de tipo de conversión de datos, gracias Darhius, lo que ocurre es que yo intentaba usar %i como hago en c# pero no existe "i" en java, el tipo de dato int es "d" como pusiste tú, voy a hacerme una lista con los tipos de valores y su conversión en la clase Formatter y si algún tipo de dato no lo encuentro te lo pregunto ¿si? :D
En línea

Darhius


Desconectado Desconectado

Mensajes: 427


Divide y vencerás.


Ver Perfil
Re: printf() Problemas con el formato
« Respuesta #8 en: 3 Diciembre 2010, 06:40 »

Qué bueno que te sirvió, pensé que no era lo que buscabas, ya que no habias respondido nada.

Y claro para eso estamos para ayudar.

Saludos.
En línea

"Cuenta mi historia... a quienes pregunten, cuéntala con verdad, las cosas malas junto con las buenas  y permite que sea juzgado apegado ellas... el resto... es silencio." Dinobot (Beast Wars Transformers)
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines