martes, 6 de agosto de 2013

FECHA ACTUAL EN JAVA CON CONDICIONALES

hola amigos pues aqui les  traigo un ejemplo de  como obtener la fecha actual en java lo hice con condicionales con los diferentes condicionales para que vean su funcionamiento if, swich y la condicion ternaria espero que les sirva dejare explicado el codigo.

public static void main(String[] args) {
        // obtener fecha y hora actual  
   Calendar ahora = Calendar.getInstance();
  int hora = ahora.get(Calendar.HOUR_OF_DAY);
  int minuto = ahora.get(Calendar.MINUTE);
  int mes = ahora.get(Calendar.MONTH)+1;
  int dia = ahora.get(Calendar.DAY_OF_MONTH);
  int an = ahora.get(Calendar.YEAR); 

primero iniciamos  instanciado el método Calendar y  creando  variables para poder  obtener la fecha de nuestra maquina.

 //mostrar saludo en consola
  
  if(hora<12){
  System.out.println("Buen dia. \n");
  }
  else if(hora<17){
  System.out.println("Buena tarde. \n");
  }
  else {
   System.out.println("Buena noche. \n");
  }
 
aquí lo que hago es mandar un saludo dependiendo la hora que sea comparo mi variable hora si es menor a 12  entonces  imprime su saludo de buen dia, menor a 17 imprime mensaje buena tarde y el ultimo es buena noche, hay que recordad que el formato de la hora es en 24 horas.

//iniciando mensaje mostrando las hora
  
   System.out.print("Son las");
   System.out.print(" ");
   System.out.print((hora>12)?(hora-12):hora);         1
   System.out.print(" horas ");
   
   //en esta linea mostramos los minutos
   if(minuto!=0){
   System.out.print(minuto+" ");
   System.out.print((minuto!=1)?" minutos ":" minuto ");    2
   
   //mostramos el dia actual
   System.out.print(" del dia " + dia +" de ");

aquí empiezo a mostrar los mensajes en pantalla si se dan cuenta aqui es donde aplico el  condicional ternario  en el print  que esta en rojo lo que hago es una condicion vamos a explicar e segundo  evaluo si minuto es diferente a 1 entonces  se imprime minutos de lo  contrario  se imprime minuto, es sencillo su aplicación 

switch(mes){
       
       case 1:
           System.out.print("Enero");
           break;        
       case 2:
           System.out.print("Febrero");
           break;
       case 3:
           System.out.print("Marzo");
           break;
}

ya casi para teminar lo que hago aqui es  ponerle nombre los meses ya que en el metodo Calendar nos devuelve un numero entero aqui  con el  swich le pongo nombre deben de ir todo los meses pero yo solo le puse 3  por cuestiones que no se alargue  la publicacion.
OJO: el metodo Calendar  los meses lo toma de 0 a 11 lo que se hace es sumarle un +1 para que los meses vallan  bien.

   System.out.println(" de " +an+"."); 
por ultimo se imprime el año 

y el programa ala hora de ejecutar muestra esto:


pues bueno amigos eso seria todo les dejo el link del proyecto si tienen duda  comenten sale 

link del proyecto http://e72ccf2c.linkbucks.com

#LiNuXeA - El conocimiento es libre