Solución:
Puedes usar:
Thread.sleep(2000);
o
java.util.concurrent.TimeUnit.SECONDS.sleep(2);
Tenga en cuenta que ambos métodos arrojan InterruptedException
, que es una excepción marcada, por lo que tendrá que detectar eso o declarar en el método.
Editar: después de capturar la excepción, su código se verá así:
if (doAllFaceUpCardsMatch == false) {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
concentration.flipAllCardsFaceDown();
} else {
concentration.makeAllFaceUpCardsInvisible();
}
Como es nuevo, le recomendaría aprender a manejar excepciones una vez que se sienta un poco cómodo con Java.
Para aquellos que solo quieren un truco rápido sin tener que traer una biblioteca …
public class Timing {
public static void main(String[] args) {
int delay = 1000; // number of milliseconds to sleep
long start = System.currentTimeMillis();
while(start >= System.currentTimeMillis() - delay); // do nothing
System.out.println("Time Slept: " + Long.toString(System.currentTimeMillis() - start));
}
}
Para juegos de alta precisión a 60 fps, esto probablemente no sea lo que desea, pero quizás algunos puedan encontrarlo útil.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)