FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Funcion de tiempo
Hola me gustaria poder utilizar la funcion Time de java, pero no se muy bien como utilizarla.
Esto es lo que viene en la APIS, pero no soy capaz de usarlas: Time(long time) Constructs a Time object using a milliseconds time value. Time public Time(long time) Constructs a Time object using a milliseconds time value. Parameters: time - milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT Lo he intentado de las siguientes formas pero ninguna de ellas me funciona: 1. long tiempo; long numero=100; tiempo.Time(numero); ERROR: Tiempo.java:24: long cannot be dereferenced fecha.Time(numero); 2. long tiempo; long numero=100; tiempo=Time(numero); ERROR:Tiempo.java:24: cannot resolve symbol symbol : method Time (long) location: class Tiempo fecha=Time(numero); 3. long tiempo,fecha; long numero=100; fecha=tiempo.Time(numero); ERROR:Tiempo.java:25: long cannot be dereferenced fecha=fecha2.Time(numero); 4.tiempo = new long[10]; long numero=100; tiempo=Time(numero); ERROR: Tiempo.java:19: cannot resolve symbol symbol : variable fecha location: class Tiempo fecha = new long[10]; ^ Tiempo.java:24: cannot resolve symbol symbol : variable fecha location: class Tiempo fecha=Time(numero); ^ Tiempo.java:24: cannot resolve symbol symbol : method Time (long) location: class Tiempo fecha=Time(numero); ^ 3 errors No se me ocurre como hacerlo. Muchas Gracias |
#2
|
|||
|
|||
Hola, Pedro Manuel. Ante todo, bienvenido a estos foros. El problema está en que tienes que crearte el objeto tiempo. Código:
long milisegundos=100000; tiempo=new Time (milisegundos); Time es una clase que pertenece al paquete java.sql y que hereda de la clase Date. El parámetro que recibe son los milisegundos. Tal vez lo veas más claro aquí. Un saludo. |
#3
|
|||
|
|||
bucle que dure un minuto
Hola, necesito hacer una cosa muy facil aparentemente pero que no soy capaz de implementar.
Necesito hacer un pequeño bucle que dure un minuto por ejemplo y dentro de el ejecute un programa, y posteriormente otro bucle que dure un minuto tambien en el que no haga nada el programa. He hecho lo siguiente pero no me funciona: int i=9000,j=0; Time tiempo,nuevo,suma; long pri=1,seg=2,sum=3,asignartiempo=9000; tiempo = new Time(asignartiempo); nuevo = new Time(asignartiempo); System.out.println("Ahora se Activa el programa"); while (tiempo.equals(nuevo)) { //ASIGNO AL NUEVO Y A TIEMPO EL VALOR ASIGNARTIEMPO nuevo = new Time(asignartiempo); tiempo = new Time(asignartiempo); //INCREMENTO EL VALOR DE ASIGNARTIEMPO asignartiempo++; //INCREMENTO i PARA QUE QUE EL BUCLE SOLO PARE EN I=69000 i++; if (i == 69000) {asignartiempo++; nuevo = new Time(asignartiempo); } System.out.println(""); } //VUELVO A INICIALIZAR LOS DATOS PARA EL BUCLE EN EL QUE ESTE PARADO asignartiempo=9000; i=9000; tiempo = new Time(asignartiempo); nuevo = new Time(asignartiempo); System.out.println("Ahora se DESActiva El programa"); while (tiempo.equals(nuevo)) { nuevo = new Time(asignartiempo); tiempo = new Time(asignartiempo); asignartiempo++; i++; if (i == 69000) {asignartiempo++; nuevo = new Time(asignartiempo);} } } } Esto me dura lo que tarda en hacer 60000 println pero no 60000 milisegundos, es decir depende de la potencia del ordenador. Os agradecería mucho si pudieraias ayudarme. Muchas Gracias |
#4
|
|||
|
|||
Hola, pedromanuel.
Para generar el retardo, puedes utilizar la función estática sleep (long milisegundos) de la clase java.lang.thread Código:
try { Thread.sleep(60000); } catch (InterruptedException e) { } Para próximas ocasiones, recuerda encerrar tu código entre las etiquetas [ code ] [ /code ] (sin los espacios) o pinchando sobre el icono # Esto sirve para respetar la indentación y hacerlo más legible. Saludos. |
#5
|
|||
|
|||
Hola, de nuevo, me gustaria saber si existe alguna forma de indicar además el tiempo que le queda para terminar el tiempo de descanso.
Por ejemplo, en el caso que me has propuesto, dormiría 60 segundos. ¿Podría decirle cada 10 segundos: Te quedan 50 segundos Te quedan 40 segundos Te quedan 30 segundos Te quedan 20 segundos Te quedan 10 segundos? Muchas Gracias y perdona de nuevo por las molestias pero es que estoy bastante verde en el tema Java |
#6
|
|||
|
|||
Entonces lo más conveniente es que primero te prepares con algún buen libro de Java y después te pongas a programar.
Si lo que necesitas es información del tiempo transcurrido cada diez segundos, haz un bucle que recorrerás 6 veces haciendo dentro un sleep de 10000 milisegundos, y solo tendrás que capturar en una variable el número de vuelta para saber cuandos milisegundos faltan hasta los 60000. Saludos. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|