Ajuda básica: exibição do resultado

5 respostas
N

Amigos mais uma dúvida basica, supondo que eu tenha um programa abaixo:

public class Fibonacci {
    public static long fib(int n) {
        if (n <= 1) return n;
        else return fib(n-1) + fib(n-2);
    }

    public static void main(String[] args) {
        int N = Integer.parseInt(args[0]);
        for (int i = 1; i <= N; i++)
            System.out.println(i + ": " + fib(i));
    }

}

Gostaria que quando for exibir na tela mostra-se o resultado com tempo de pelo menos 2 segundos apos cada resultado impresso, por exemplo

1
(2 seg)
1
(2 seg)
2
…etc

5 Respostas

J

Você pode usar o método sleep do objeto Thread.

try{
      Thread.sleep(2000);
} 
catch(InterruptedException e){
      System.err.println(e.getMessage());
}

Esse fragmento de código pode ser colocado no bloco for do método main da sua classe.

N

Entendo mas não existe outra maneira alem da utilização do Thread??

S

Não creio, terás mesmo de usar threads.

P

Existe um metodo “System.currentTimeMillis()”, que retorna a hora do computador em milissegundos, vc pode usar isso com um if.

V

Poderia utilizar uma forma meio que Gambiarroza,hehehe.Instancia um objeto new Date() e fora do teu comando de repeticao e logo em seguinda instancia outro objeto Date e compara com o teu primeiro objeto Date utilizando o metodo compareTo().Espero ter ajudado

Criado 24 de fevereiro de 2007
Ultima resposta 26 de fev. de 2007
Respostas 5
Participantes 5