Autor Tema: Ejercicio CU00682B clase que representa un tipo enumerado java  (Leído 3762 veces)

momo

  • Principiante
  • **
  • Mensajes: 64
    • Ver Perfil
Citar
* Declara una clase que represente el tipo enumerado que define tipos de piedra
 *  con los valores CALIZA, MARMOL, PIZARRA, CUARZITA. Si sus pesos específicos son
 *   de 1200, 1423.55, 1325 y 1466.22, crea un programa que muestre el peso de los
 *    palets de cada uno de los tipos de piedra. Puedes comprobar si tu código es
 *     correcto consultando en los foros aprenderaprogramar.com.


Piedras:
Código: [Seleccionar]
public enum Piedras {
CALIZA(1200), MARMOL(1423.55f), PIZARRA(1325), CUARZITA(1466.22f);
private final float pesoPiedra;

Piedras(float pesoPiedra) {
this.pesoPiedra = pesoPiedra;

}

public double getPesoPiedra() {
return pesoPiedra;
}

}
TestPesoPiedra:
Código: [Seleccionar]
public class TestPesoPiedra {

public static void main(String[] args) {

int contador = 1;
float pesoPalet = 2.27f;
for (Piedras objeto : Piedras.values()) {
System.out.println("Tipo de Piedra " + contador + ": "
+ objeto.toString() + " " + "||   Peso Palet :"
+ (pesoPalet * (float) objeto.getPesoPiedra()));
contador++;
}

}

}


« Última modificación: 17 de Octubre 2014, 08:39 por Alex Rodríguez »

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:CU00682B
« Respuesta #1 en: 16 de Octubre 2014, 20:29 »
 Hola momo!

Tu respuesta a este ejercicio esta correcta.

Algunos puntos a tomar en cuenta son:

Clase Piedras: Tienes una constante (pesoPiedra) de tipo "float" y un método get (getPesoPiedra) declarado como "double" cuya funcion es devolver el valor de la constante pesoPiedra. El punto es, que tienes una diferencia de tipos entre esta constante y este método, (float constante, double método) me parece extraño que esto no genere un error en compilación, pero aun así lo mejor es que mantengas la costumbre de declarar un método del mismo tipo que la variable o constante de la cual cuyo valor sera devuelto.

Clase TestPesoPiedra: Dentro de una instrucción del tipo System.out.println("..."); no es necesario incluir el metodo toString(); puesto que la misma instrucción System.out.println("..."); se encarga de convertir a String el valor de las variables que estén dentro de la instrucción. Si tomas esto en cuenta podrías sustituir tu fragmento de codigo
Código: [Seleccionar]
+ objeto.toString() + " " + "||   Peso Palet :" por
Código: [Seleccionar]
+ objeto + " " + "||   Peso Palet :"Otros pequeños detalles como, concatenar la cadena " kg" para indicar el tipo de unidad de peso en que se expresa el peso de cada palet, y declarar
Código: [Seleccionar]
Peso Palet: + (pesoPalet * (float) objeto.getPesoPiedra())); en lugar de
Código: [Seleccionar]
Peso Palet : + (pesoPalet * (float) objeto.getPesoPiedra())); donde la simple posición del punto doble ":" afecta lo que es la interface o visualización de lo que muestra tu código, también debes de tomarlos en cuenta.

Saludos!
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

momo

  • Principiante
  • **
  • Mensajes: 64
    • Ver Perfil
Re:CU00682B
« Respuesta #2 en: 16 de Octubre 2014, 22:09 »
De nuevo aquí amigo fue un despiste de mi parte comenzando estaba trabajando con double .. pero después modifique y lo empece a trabajar con float no me percate de que no le había cambiado el nombre. jaja andaba un poco despistado

Gracias Nuevamente.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".