Ir para conteúdo
paulinhosupriano

[resolvido] Testar Performance em Java - ArrayList e HashSet

Recommended Posts

 

import java.util.HashSet;
import java.util.ArrayList;
import java.util.Collection;

public class TestarPperformance {
	
	public static void main(String[] args) {
		System.out.println("Iniciando...");
		long inicio = System.currentTimeMillis();
		//Collection<Integer> teste = new ArrayList<>();
		Collection<Integer> teste = new HashSet<>();

		int total = 30000;
		//int total = 50000;
		//int total = 100000;
		//int total = 150000;
		//int total = 200000;
		
		for(int i=0; i< total; i++) {
			teste.add(i);
		}
		
		for(int i=0; i <total; i++) {
			teste.contains(i);
		}
		
		long fim = System.currentTimeMillis();
		long tempo = fim-inicio;
		System.out.println("Tempo gasto:" + tempo);
		
	}
	
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por gustavo.abarroso
      Estou tentando criar uma lista genérica de clientes, onde posso adicionar pessoasFisicas e pessoasJuridicas.
       
      Dentro da classe clientes possuo os atributos nome, lista de endereços e limite de crédito.
      A classe pessoaFisica herda de cliente os atributos acima citados além de possuir o atributo cpf.
      A classe pessoaJuridica herda de cliente seus atributos e possui também, nomeFantasia e cnpj.
       
      O problema que está acontecendo é o seguinte: na hora que cadastro mais de uma pessoa física por exemplo e puxar o relatório, me vem a lista de endereços inteira (conforme foto em anexo) ao invés de vim a lista da pessoa de cada posição do ArrayList de clientes. Como resolvo isso?
       
      public void cadastrar() { int op, resp; System.out.println("\n==[Cadastro de clientes]=="); System.out.println("Digite 1 para cadastrar pessoa fisica."); System.out.println("Digite 2 para cadastrar pessoa juridica."); System.out.print("=> "); op = input.nextInt(); switch (op) { case 1: System.out.println("\n==[Pessoa fisica]=="); System.out.print("Informe o nome: "); nome = inputs.nextLine(); do { listaEndFisica.add(retornaUmEndereco()); System.out.println("Continuar cadastrando endereços? 1-Sim/0-Não"); resp = input.nextInt(); } while (resp != 0); System.out.print("Informe o limite de crédito: "); limiteCredito = input.nextDouble(); System.out.print("informe o cpf: "); cpf = inputs.nextLine(); PessoaFisica pessoaFisica = new PessoaFisica(nome, listaEndFisica, limiteCredito, cpf); listaCliente.add(pessoaFisica); System.out.println("\nPessoa fisica adicionado com sucesso! "); break; case 2: System.out.println("\n==[Pessoa Juridica]=="); System.out.print("Informe o nome: "); nome = inputs.nextLine(); do { listaEndJuridica.add(retornaUmEndereco()); System.out.println("Continuar cadastrando endereços? 1-Sim/0-Não"); resp = input.nextInt(); } while (resp != 0); System.out.print("Informe o limite de crédito: "); limiteCredito = input.nextDouble(); System.out.print("Informe o nome fantasia: "); nomeFantasia = inputs.nextLine(); System.out.print("Informe o cnpj: "); cnpj = inputs.nextLine(); PessoaJuridica pessoaJuridica = new PessoaJuridica(nome, listaEndJuridica, limiteCredito, nomeFantasia, cnpj); listaCliente.add(pessoaJuridica); System.out.println("\nPessoa juridica adicionado com sucesso! "); break; default: System.out.println("opção inválida! "); } } public void relatorio() { if (listaCliente.isEmpty()) { System.out.println("Não existem clientes cadastrados! "); } else { for (Cliente c : listaCliente) { if (c instanceof PessoaFisica) { System.out.println("\n-=[Pessoas Fisicas]=-"); System.out.println("Nome: " + c.getNome()); System.out.println("-=[Endereço(s) Associado(s)]<-"); for (Endereco end : listaEndFisica) { System.out.println("Logradouro: " + end.getLogradouro()); } System.out.println("Limite de crédito: " + c.getLimiteDeCredito()); System.out.println("Cpf: " + ((PessoaFisica) c).getCpf()); } else if (c instanceof PessoaJuridica) { System.out.println("\n-=[Pessoas Juridicas]=-"); System.out.println("Nome: " + c.getNome()); System.out.println("-=[Endereço(s) Associado(s)]<-"); for (Endereco end : listaEndJuridica) { end.getLogradouro(); System.out.println("Logradouro: " + end.getLogradouro()); } System.out.println("Limite de crédito: " + c.getLimiteDeCredito()); System.out.println("Nome fantasia: " + ((PessoaJuridica) c).getNomeFantasia()); System.out.println("Cnpj: " + ((PessoaJuridica) c).getCnpj()); } } } }  

    • Por Laurofelipe
      Boa tarde.
      Estou tentando criar um método para busca de pessoa (usuario) por nome.
      Logo, deve receber como parâmetro o nome à procurar e devolver uma lista (return lista;) nula ou com elementos.
      Estou recebendo como retorno o erro abaixo. 
      [ERROR] 1
      java.lang.ArrayIndexOutOfBoundsException: 1
      Como não consigo ler o nome (System.out....) logo antes mesmo de declarar o ArrayList<Usuario>, devo entender que desta forma não é possível passar parâmetro para o método.
      Tem como re-escrever este método? São duas questões fundamentais: Preciso passar um parâmetro, e devo receber um arraylist para ser tratado fora desta classe, em outro projeto. Deve ser consumido por uma aplicação android.
      Se alguém puder dar-me uma luz, agradeço antecipadamente.
       
      Lauro
       
      public ArrayList<Usuario> usuario---ome(String nome) {
      // nome de pesquisa, começando  ou que contenha, depende do contexto.
          ArrayList<Usuario> lista = new ArrayList<Usuario>();
           try {
               Connection conn = ConectaMySql.obtemConexao();
               String sqlConsulta = "SELECT * FROM usuario WHERE usuario_nome=?";
               PreparedStatement ppStm = conn.prepareStatement(sqlConsulta);
               ppStm.setString(1, "%"+ nome+"%");
                 
               ResultSet rsUsuario = ppStm.executeQuery();
               while(rsUsuario.next()) {
                   Usuario user = new Usuario();
                   user.setId(rsUsuario.getInt(1));
                   user.setNome(rsUsuario.getString(2));
                   ser.setNomeLogin(rsUsuario.getString(3));
                   user.setSenha(rsUsuario.getString(4));
                   user.setCodigoAcesso(rsUsuario.getString(5));
                   lista.add(user);
               }
               conn.close();
           } catch (Exception e){
               e.printStackTrace();
           }
           return lista;
      }
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.