Ejercicio CU00682B del tutorial fundamental de programación Java con entorno de programación BlueJ
Bueno este ejercicio realmente es el mismo del ejemplo, pero teniendo en cuenta que se requiere doublé en el constructor y no int. protected Enum(String name,int ordinal)
package tipopiedras;
/**
*
* @author itco1724
*@fecarvajal
*/
public class TestClaseEnumPiedras {public static void main (String[ ] Args) {
TipoPiedras piedrasUsuario1 = TipoPiedras.MARMOL;
System.out.println ("La piedra elegida por el usuario es " + piedrasUsuario1.toString() + "\n es una " + piedrasUsuario1.getTipo() + " y con un peso específico de " + piedrasUsuario1.getPesoEspecifico() + " kg/m3");
System.out.println ("Un palet admite 2.27 m3 de volumen. A continuación el peso de los palets de las distintas piedras:");
for (TipoPiedras tmp: TipoPiedras.values() ) {
System.out.println (tmp.toString() + " el palet pesa " + (2.27f*(float )tmp.getPesoEspecifico() ) + " kg");
}
} //Cierre del main
} //Cierre de la clase
package tipopiedras;
// Clase que contiene los tipos de madera que usa la empresa, su color y su peso específico en kg/m3
/**
*
* @author itco1724
*/
public enum TipoPiedras {
CALIZA("Piedra comun", 1200), //Separamos con comas
MARMOL ("Piedra Fina", 1423.55),
PIZARRA("Piedra debil", 1325),
CUARZITA("Piedra SemiPreciosa", 1466.22);
//Cuando terminamos cerramos con ;
//Campos tipo constante
private final String tipo; //Tipo de piedra
private final double pesoEspecifico; //Peso específico de la piedra
/**
* Constructor. Al asignarle uno de los valores posibles a una variable del tipo enumerado el constructor asigna automáticamente valores de los campos
*/
TipoPiedras (String tipo, double pesoEspecifico) {
this.tipo = tipo;
this.pesoEspecifico = pesoEspecifico;
} //Cierre del constructor
//Métodos de la clase tipo Enum
public String getTipo() { return tipo; }
public double getPesoEspecifico() { return pesoEspecifico; }
} //Cierre del enum