Date y Calendar en java.

Hola a todos, en este post veremos como mostrar la hora en java, para esto usaremos el objeto Calendar y el objeto Date, primero les comento que el resultado sera en consola es decir, vamos utilizar un hilo para estar pintando la hora cada segundo pero como lo mencione anteriormente en la consola, una vez aclarado ésto procederé a explicar lo siguiente:

Primeramente crearemos una clase que heredara de un Thread para poder sobre escribir el método Run a esta clase yo la llamare DateTime.

Dentro de esta clase crearemos el constructor en donde si ustedes quieren le pasen un string si no, no hay problema esto solo es para ponerle un nombre, ademas de un boolean para ejecutar el método Run que sobre escribiremos mas tarde, en mi caso el constructor quedaría de la siguiente manera:
public DateTime(String nombre) {
   super(nombre); 
   corre = true;  
}
Ahora pasaremos a sobreescribir el método Run recuerden que estamos heredando de Thread, en el método Run creamos un ciclo con un while en donde estaremos mandando llamar un método llamado getTime que declararemos mas abajo, la variable "corre" que es un boolean nos permitirá que el ciclo se ejecute. dentro del ciclo colocamos un try and catch para en caso de que surja un error, dentro del try mandamos llamar el método getTime y debajo el método sleep para que se espere 1 segundo antes de volver a entrar de nuevo al while. el código quedaría de la siguiente manera:
public void run(){
  
   while(corre){   
      try {
         System.out.println(getTime());
         sleep(1000);
    
      } catch (InterruptedException e) {
         System.out.println("Error "+e.getMessage());
      } 
   } 
  
}
Ahora pasaremos a crear el método getTime que es el que se encarga de regresarnos la hora. primero que nada dentro del método creamos un objeto de tipo Calendar y otro de tipo Date una vez creado los objeto mandamos llamar el método setTime que pertenece a Calendar, pasando el objeto Date creado para indicarle los datos del día presente, ahora en el ejemplo yo cree 3 variables los cuales almacenar la hora los minutos y los segundos, entonces a cada una de las variables les asigno un valor utilizando el objeto Calendar y llamando el método get pasando la instancia que quiero de regreso, como se muestra en el ejemplo, por ultimo tengo un if el cual solo sirve para que los minutos del 0 al 9 contengan un cero a la su izquierda y no solo aparezca el numero solo. el código quedaría de la siguiente manera:
public String getTime(){
  
    Date d = new Date();
    Calendar c = new GregorianCalendar();
    c.setTime(d);
  
    hora     = c.get(Calendar.HOUR_OF_DAY);
    minuto   = c.get(Calendar.MINUTE);
    segundo  = c.get(Calendar.SECOND);
  
    if(minuto < 10){
       return "Hora: "+hora+" Minuto: 0"+minuto+" Segundo: "+segundo;
    }else{
       return "Hora: "+hora+" Minuto: "+minuto+" Segundo: "+segundo;
    } 
}
Noten que el método getTime regresa un string y que las variables "hora", "minuto" y "segundo" son enteros y están declarado de manera que sean globales al igual que el boolean "corre".

Ahora solo queda declara la clase main que solo es crear un objeto y mandar llamar el método Run. como se muestra en el siguiente ejemplo:
public class main {

    public static void main(String[] args) {
    // TODO Auto-generated method stub
  
       DateTime h1 = new DateTime("Hilo 1");
       h1.run();  
    }
}
No olviden que el método get de calendar nos puede regresar muchas cosas mas, yo solo tome la hora para realizar el post si quieres saber mas de lo que puedes obtener checa aquí.

Si quieres el código lo puedes descargar desde Aquí  sigueme en GitHub y Twitter.

Saludos.

Prompt y Confirm en JavaScript

Ademas de la ya muy conocida función alert que tiene JavaScrip para la interacción con el usuario también cuenta con otras muy interesantes de las cuales hablaremos y veremos su sintaxis.

Confim.

Esta función permite preguntarle al usuario si desea realizar alguna acción en donde la respuesta es ACEPTAR o CANCELAR, esta función regresa como resultado un boleano (boolean), es decir, si el usuario hizo clic en ACEPTAR la función regresa un true, de lo contrario, si el usuario hace clic en CANCELAR la función regresa un false.

En el siguiente ejemplo crearemos una variable en donde almacenaremos el valor que nos regrese la función confirm dependiendo de la respuesta seleccionada por el usuario, y luego la mandaremos imprimir en consola.
var theConfirm = confirm("Exit?");
console.log(theConfirm);

Prompt.

Esta función puede ser usado para hacer una pregunta abierta, el primer argumento que le mandaremos es la pregunta que deseamos realizar, El segundo argumento es un texto que aparecerá al ejecutarse la función pero esta se sobreescribira con la respuesta del usuario, esta función nos regresa una cadena de texto (string).

nota: el segundo argumento no siempre es necesario a menos que así lo requieras.

En el siguiente ejemplo crearemos una variable en donde guardaremos el valor que nos regrese la función y después lo mandaremos pintar en la consola.
var name= prompt("What is your name?","..");
console.log("Your name is: " + name);

Pero que pasa si lo que queremos del usuario no es su nombre si no su edad y ocupamos que a fuerza el valor que nos regrese sea un entero (int), pues realizamos una conversión con la función Number(),
el cual nos convertirá la respuesta del usuario a entero.

nota: si nosotros queremos utilizamos la función Number pero ingresamos una cadena de texto, entonces nos regresara una valor NaN lo que tenemos que hacer para evitar eso es una pequeña validación en donde cheque el valor de la variable que cachará lo que regrese la función Number, antes de mandarlo imprimir a la consola.

El código quedaría mas o menos asi:
var user_a = Number(prompt("How old are you?:",".."));

if(!isNaN(user_a)){
    console.log("Your age is: "+user_a);
}else{
    console.log("is not a number!!, try again.");
}

Bueno espero que les sirva este post y si tiene alguna duda pueden comentarlo.
Saludos.

Eloquent JavaScript

¿Quieres convertirte en un pro en javaScript?

Se existen muchos cursos en la red que te enseñan de una manera simple y sencilla el desarrollo en javaScript, pero que mejor que verlo por ti mismo y tratar de desarrollar esa capacidad autodidacta que se necesita para mejorar día con día.

Es por eso que en este pequeño post les traigo el libro de Eloquent Javascript que es ademas se ser un gran libro tiene contribuciones de personas de la fundación Mozilla, Hack Reactor (Lean acerca de hack reactor, se sorprenderán) y Ghostery.



Lo pueden checar en linea en el siguiente enlace:

O bien lo pueden descargar en PDF y tenerlo en sus computadoras con el siguiente enlace:

Bueno espero que les guste el post y les sirva el libro, no olviden comentar, Saludos!!

La historia de Aaron Swartz, el chico de internet.

Sin duda cuando mire el documental quede conmocionado ya que aunque este un poco apegado a ámbito de la tecnología libre no sabia lo que en hacen o sacrifican otras personas para tratar de crear un mundo mejor. es por eso que no dude en hacer un pequeño post con el documental para difundirlo un poco más. espero que el documental le guste y lo compartan con otras personas y a si ser mas lo que queremos un mundo mejor y libre.

"La información es poder. Pero como todo poder, hay quienes quieren mantenerlo para ellos".
-Aaron Swartz. 1985-2013.



Espero que les guste, saludos!!

Recorrido de un matriz en java.

Hola amigos, en esta ocasión veremos como recorrer un matriz en java, teniendo en cuenta que la matriz puede ser de diferentes dimensiones.


Aquí abajo les coloco el código recuerden comentar sus dudas.
    
     public class Main {

          public static void main(String[] args) {
                // TODO Auto-generated method stub

                // Primero creamos nuestra matriz (pueden hacer cambios en las dimensiones).
                int[][] numeros = new int[3][5];

                // Ahora instanciamos un entero para poder agregarle valores a la matriz.
                int n = 0;
  
                // Este ciclo anidado nos funciona para agregarle valores a la matriz.
                for (int x = 0; x < numeros.length;x++) {
   
                    for (int y = 0; y < numeros[x].length; y++) {
                         n++;
                         numeros[x][y] = n;
                    }   
                }
  
                // Este ciclo anidado nos permite pintar la matriz en consola.
                for (int x = 0; x < numeros.length;x++) {
   
                    for (int y = 0; y < numeros[x].length; y++) {
    
                         System.out.print("["+numeros[x][y]+"]");
                    }
                    System.out.println("\n");
                }

                // Por ultimo solo pintamos las filas y columnas de nuestra matriz.
                System.out.println("Número de fila: "+numeros.length);
                System.out.println("Número de columnas: "+numeros[0].length);  
        }
    }


Bueno espero que les sea de ayuda el código de igual forma colocaré el vídeo en la parte de abajo, no olviden comentar sus dudas.

Saludos.