[RESOLVIDO] Calcular o tempo de processamento de uma função

2 respostas Resolvido
java
A

Boa noite pessoal, eu tenho essa função de ordenar dados na minha aplicação e eu queria saber como posso calcular o tempo que ele demora para ordenar e colocar esse resultado em uma JLabel, agradeço desde ja a ajuda
/code

btnNewButton = new JButton(Crescente);

btnNewButton.setFont(new Font(Tahoma, Font.PLAIN, 9));

btnNewButton.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

try {

String str;

ArrayList nomes = new ArrayList();
BufferedReader in = new BufferedReader(new FileReader("C:\\Users\\sique\\OneDrive\\Documentos\\facul 4o\\aps\\entrada.txt"));

	        while ((str = in.readLine()) != null) {
	            nomes.add(str);
	        }
	        in.close();

	        Collections.sort(nomes);

	        BufferedWriter out = new BufferedWriter(new FileWriter("C:\\Users\\sique\\OneDrive\\Documentos\\facul 4o\\aps\\entrada.txt"));
	        for (int i = 0; i < nomes.size(); i++) {
	            out.write(nomes.get(i));
	            out.newLine();
	        }
	        out.close();
			}catch(IOException ex) {
				
				JOptionPane.showMessageDialog(null, "erro em salvar" + ex.getMessage());
			}
	       
	    }
	});
	btnNewButton.setBounds(165, 211, 85, 21);
	contentPane.add(btnNewButton);

code/

2 Respostas

P
Solucao aceita

A maneira mais simples é obter o timestamp no inicio e no fim e calcular a diferença

public void algumMetodo(){
    long startTime = System.currentTimeMillis();
    (...) // faz coisas que queremos saber quanto demoram
    long endTime = System.currentTimeMillis();
    System.out.println("Demorou " + (endTime - startTime) + " ms");
 }
A

Perfeito, muito obrigado!

Criado 11 de novembro de 2021
Ultima resposta 11 de nov. de 2021
Respostas 2
Participantes 2