jueves, 6 de diciembre de 2012

Codigo java simular semaforo cambiando de color


En el post de hoy lo que haré será enseñarte el código java para simular un semáforo que va cambiando de color. En primer lugae he creado un enum con los colores del semáforo (lo he llamado ColorSemaforo):

public enum ColorSemaforo {
Verde, Ambar, Rojo;
}

A la clase donde he creado el semáforo la he llamado Semaforo y este es el código:
public class Semaforo {
//Codigo por www.DesarrollarAplicaciones.com
private ColorSemaforo color;
public Semaforo(){
}
public ColorSemaforo getColor() {
return color;
}
public void setColor(ColorSemaforo color) {
this.color = color;
}
public String toString(){
String s="Semaforo:" +color;
return s;
}
public void cambiarColor(){
if(color==ColorSemaforo.Verde){
color=ColorSemaforo.Ambar;
}
else{
if(color==ColorSemaforo.Ambar){
color=ColorSemaforo.Rojo;
}
else{
color=ColorSemaforo.Verde;
}
}
}
public static void main(String[]args) throws InterruptedException {
Semaforo misemaforo=new Semaforo();
misemaforo.setColor(ColorSemaforo.Verde);
int c=0;
while(c<=100){
System.out.println(misemaforo.toString());
misemaforo.cambiarColor();
Thread.sleep(2000);
c++;
}
}
}

En el main he utilizado el Método Thread.sleep para ralentizar el cambio de un color a otro poniéndolo en 2000 milisegundos cada cambio. Como ves el código no tiene gran cosa, un atributo color del tipo ColorSemaforo (el enum que creamos anteriormente), get y set, método toString y un método que cambiará el color del semáforo. En el main solo crearemos un objeto “misemaforo”, le daremos un color inicial y con un contador llamaremos un número de veces al método cambiarColor y toString.

No hay comentarios:

Publicar un comentario