Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: Lorenzo31 en 09 de Abril 2015, 17:00
-
Buenas tardes, aquí dejo mi ejercicio resuelto
Clase Enum TipoPiedra
/**
* Enumeration class Piedras - Esta clase contiene los tipos de piedra y sus pesos especificos.
*
* @author Lorenzo31
* @version 09-04-2015
*/
public enum TipoPiedra {
CALIZA (1200f),
MARMOL (1423.55f),
PIZARRA (1325f),
CUARZITA (1466.22f);
private final float peso;
TipoPiedra(float valorPeso) { peso = valorPeso; }
public float getPeso() { return peso; }
/**
* Funcion que @return un float y calcula el peso de un palet fijandose en el peso unitario
* y multiplicandolo por 2.27 que se daba por supuesto en el ejercicio anterior, era un palet
*/
public float getPesoPalet() { return 2.27f * peso; }
}
Clase Main GestorPiedra
/**
* Clase Main que recorre los tipos de Enumerados declarados en Enum TipoPiedra
* @Author Lorenzo31
*/
public class GestorPiedra {
public static void main (String [] args){
System.out.println("Iniciamos el programa ");
System.out.println(" TIPO PIEDRA \t PESO M3 \t PESO TOTAL PALET");
for(TipoPiedra tmp: TipoPiedra.values()){
System.out.println(tmp.toString() + "\t \t" + tmp.getPeso() + "kg \t \t" + tmp.getPesoPalet() + "kg" );
}
}
}
-
Hola Lorenzo, todo está bien así que nada que comentar. Has usado float para datos numéricos decimales. Es más habitual usar double, pero es el programador quien decide si usa float o double según considere más oportuno.
Saludos
-
Gracias, tuve una duda al realizar el ejercicio, el caso es que al final cuando printo los datos del for each, el nombre del enum tmp.toString(), se me printaba exactamente igual con tmp solo (solo la variable creada, imagino que java transforma en String por defecto pero prefiero preguntar).
-
Sí, cuando se hace System.out.println(tmp) Java lo transforma automáticamente en System.out.println(tmp.toString())
Podemos escribir o no el toString o no según prefiramos.
Saludos