Enum ProgII

6 pages
38 views

Please download to get full document.

View again

of 6
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Share
Description
1. Programación II Tema 2 Tipos de Datos Enumerados 2008/2009 Juanan Pereira Departamento de LSI Facultad de Informática Donostia [email_address] 2. Un tipo enumerado…
Transcript
  • 1. Programación II Tema 2 Tipos de Datos Enumerados 2008/2009 Juanan Pereira Departamento de LSI Facultad de Informática Donostia [email_address]
  • 2. Un tipo enumerado es un tipo cuyos campos forman un conjunto fijo de constantes. Ejemplos : <ul><li>direcciones cardinales (NORTE, SUR, ESTE, OESTE)
  • 3. días de la semana (LUNES, MARTES, MIÉRCOLES, JUEVES, VIERNES, SÁBADO, DOMINGO) </li></ul>
  • 4. public enum DiaSemana { LUNES , MARTES , MIERCOLES , JUEVES , VIERNES , SABADO , DOMINGO } Tipos enumerados en Java
  • 5. public class Prueba { Dia day ; public Prueba(Dia day) { this . day = day; } public void comoEs() { switch ( day ) { case LUNES : System. out .println( &quot;Lunes malos.&quot; ); break ; case VIERNES : System. out .println( &quot;Viernes mejor.&quot; ); break ; case SABADO : case DOMINGO : System. out .println( &quot;Fin de semana lo mejor.&quot; ); break ; default : System. out .println( &quot;Resto días laborables, así­-así.&quot; ); break ; } } public static void main(String[] args) { Prueba primerDiaSemana = new Prueba(Dia. LUNES ); primerDiaSemana.comoEs(); Prueba tercerDiaSemana = new Prueba(Dia. MIERCOLES ); tercerDiaSemana.comoEs(); System. out .println( &quot;Días de la semana:&quot; ); for (Dia d : Dia. values ()) { System. out .print(d + &quot; &quot; ); } }
  • 6. public enum Planet { MERCURY (3.303e+23, 2.4397e6), VENUS (4.869e+24, 6.0518e6), EARTH (5.976e+24, 6.37814e6), MARS (6.421e+23, 3.3972e6), JUPITER (1.9e+27, 7.1492e7), SATURN (5.688e+26, 6.0268e7), URANUS (8.686e+25, 2.5559e7), NEPTUNE (1.024e+26, 2.4746e7); private final double mass ; // in kilograms private final double radius ; // in meters Planet( double mass, double radius) { this . mass = mass; this . radius = radius; } private double mass() { return mass ; } private double radius() { return radius ; } // universal gravitational constant (m3 kg-1 s-2) public static final double G = 6.67300E-11;
  • 7. public enum Planet { [...] double surfaceGravity() { return G * mass / ( radius * radius ); } double surfaceWeight( double otherMass) { return otherMass * surfaceGravity(); } public static void main(String[] args) { double earthWeight = Double. parseDouble (args[0]); double mass = earthWeight/ EARTH .surfaceGravity(); for (Planet p : Planet. values ()) System. out .printf( &quot;Your weight on %s is %f%n&quot; , p, p.surfaceWeight(mass)); } } $ java Planet 175 Your weight on MERCURY is 66.107583 Your weight on VENUS is 158.374842 Your weight on EARTH is 175.000000
  • We Need Your Support
    Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

    Thanks to everyone for your continued support.

    No, Thanks
    SAVE OUR EARTH

    We need your sign to support Project to invent "SMART AND CONTROLLABLE REFLECTIVE BALLOONS" to cover the Sun and Save Our Earth.

    More details...

    Sign Now!

    We are very appreciated for your Prompt Action!

    x