Você está aqui: Java ::: Coleções (Collections) ::: HashMap

Como excluir (remover, limpar) todos os mapeamentos (chave-valor) de um HashMap

Quantidade de visualizações: 9308 vezes
Há situações em nossos códigos que precisamos excluir todos os mapeamentos (chave-valor) de um HashMap. Para estes casos podemos usar o método clear(), definindo originalmente na interface Map<K,V>. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import java.util.*;

public class Estudos{
  public static void main(String[] args){
    
    // vamos criar uma instância de HashMap
    HashMap<Integer, String> clientes = new HashMap<Integer, String>();

    // vamos adicionar três chaves e seus valores
    clientes.put(new Integer(1), "Osmar J. Silva");
    clientes.put(new Integer(2), "Salvador Miranda de Andrade");
    clientes.put(new Integer(3), "Marcos da Costa Santos");
      
    // vamos obter a quantidade de mapeamentos neste HashMap
    int quant = clientes.size();

    // vamos exibir o resultado
    System.out.println("Este HashMap contém " + quant +
      " mapeamentos."); 

    // vamos excluir todos os mapeamentos
    clientes.clear();

    // vamos obter a quantidade de mapeamentos novamente
    quant = clientes.size();

    // vamos exibir o resultado
    System.out.println("Este HashMap contém " + quant +
      " mapeamentos.");   

    System.exit(0);
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Fundamentos da Linguagem ::: Modificadores

Como usar o modificador native da linguagem Java

Quantidade de visualizações: 9465 vezes
O modificador native é usado exclusivamente com métodos. A implementação de um método marcado como native não é feita em Java mas sim em outra linguagem de programação, tal como C ou C++.

Veja um exemplo de uma aplicação Java contendo um método native:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

public class Estudos{
  private static native void escrever();
	
  public static void main(String[] args){
    System.loadLibrary("Funcoes");
    escrever();
  }
}

O primeiro detalhe a observar é a definição de um método native chamado escrever(). Veja que este método possui apenas a assinatura, o que quer dizer que sua implementação virá de um ponto externo ao nosso código. Em seguida temos uma chamada ao método LoadLibrary() da classe System. Este método recebe uma string contendo o nome da biblioteca que contém a implementação do método escrever(). O próprio método LoadLibrary se encarrega de acrescentar as extensões .dll ou .so ao nome da biblioteca que será carregada.

Quando estamos trabalhando com métodos native, é sempre uma boa idéia estudarmos JNI (Java Native Interface). JNI é uma API do Java que permite que métodos Java chamem funções nativas implementadas em C.


Java ::: Dicas & Truques ::: MIDI Musical Instrument Digital Interface, Mapeamento e sequenciamento MIDI, Entrada e saída MIDI

Java para músicos - Como escrever um MIDI Player em Java (código bem simples e fácil de entender)

Quantidade de visualizações: 13817 vezes
Nesta dica apresento uma aplicação completa para um MIDI Player em Java. Trata-se de uma aplicação console que você pode estudar e implementar a mesma idéia em Java Swing ou JavaFX. Para executar o código abaixo, você só precisa definir o caminho e nome de um arquivo MIDI (extensão .mid).

Veja o código completo e divirta-se:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

import javax.sound.midi.*;
import java.io.*;
 
public class Estudos{
  public static void main(String args[]) {
    // nome do arquivo MIDI
    String arquivo = "amazing_grace.mid";
    
    if(!arquivo.endsWith(".mid")) {
      System.out.println("Este não parece ser um arquivo MIDI válido.");
      System.exit(1);
    }
    File midiFile = new File(arquivo);
    if(!midiFile.exists() || midiFile.isDirectory() || 
        !midiFile.canRead()) {
      System.out.println("Não foi possível acessar o arquivo indicado.");
      System.exit(1);
    }
     
    try{
      Sequencer seq = MidiSystem.getSequencer();
      seq.setSequence(MidiSystem.getSequence(midiFile));
      seq.open();
      seq.start();
       
      while(true){
        if(seq.isRunning()){
          try{
            Thread.sleep(1000);
          } 
          catch(InterruptedException ignore){
            break;
          }
        } 
        else{
          break;
        }
      }
       
      seq.stop();
      seq.close();
    } 
    catch(MidiUnavailableException mue){
      System.out.println("Dispositivo de MIDI indisponível");
    }
    catch(InvalidMidiDataException imde){
      System.out.println("Dados MIDI Inválidos");
    } 
    catch(IOException ioe){
      System.out.println("Erro de I/O");
    } 
  }  
}



Java ::: Classes e Componentes ::: JTable

Java Swing Avançado - Como exibir imagens nas células de uma JTable em suas aplicações Java Swing

Quantidade de visualizações: 14863 vezes
Nesta dica mostrarei como criar uma classe personalizada que estende a classe JLabel e implementa a interface TableCellRenderer. O objetivo é fornecer esta JLabel ao método setCellRenderer() de uma das colunas da JTable e exibir uma imagem ou foto ao lado do conteúdo da célula.

Veja o resultado da figura abaixo:



E aqui está o código Java Swing completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

import javax.swing.*;
import java.awt.*;
import javax.swing.table.*;
 
public class Estudos extends JFrame{
  public Estudos(){
    super("Exemplo de uma tabela simples");
         
    // colunas da tabela
    String[] colunas = {"Nome", "Idade", "Sexo"};
         
    // conteúdo da tabela   
    Object[][] conteudo = {
        {"Osmar J. Silva", "32", "Masculino"},
        {"Maria Clara Gomes", "19", "Feminino"},
        {"Fernando Gomes", "15", "Masculino"},
        {"Carlos Vieira", "40", "Masculino"}
    };
         
    // constrói a tabela
    JTable tabela = new JTable(conteudo, colunas);
     
    // quero exibir imagens ao lado do texto da primeira coluna
    TableCellRenderer tcr = new Imagem();
    TableColumn column = tabela.getColumnModel().getColumn(0);
    column.setCellRenderer(tcr);
  
    tabela.setPreferredScrollableViewportSize(new Dimension(350, 50));
     
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
             
    JScrollPane scrollPane = new JScrollPane(tabela);
    c.add(scrollPane);
         
    setSize(400, 300);
    setVisible(true);
  }
     
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}
 
class Imagem extends JLabel implements TableCellRenderer{
  public Imagem(){
    setOpaque(true);
  }
   
  public Component getTableCellRendererComponent(JTable table, 
     Object value, boolean isSelected, boolean hasFocus, int row, 
     int column){
     
     Icon imagem = new ImageIcon("C:\\estudos_java\\icon.gif");
     // certifique-se da existencia da imagem "icon.gif" antes de executar
     
     if(isSelected)
       setBackground(table.getSelectionBackground());
     else
       setBackground(table.getBackground());        
      
     setIcon(imagem);
     setText(value.toString());
         
     return this;       
  }
   
  public void validate() {}
  public void revalidate() {}
  protected void firePropertyChange(String propertyName, 
    Object oldValue, Object newValue) {}
  public void firePropertyChange(String propertyName, 
    boolean oldValue, boolean newValue) {}  
}



Vamos testar seus conhecimentos em Ética e Legislação Profissional

Postura ética profissional

Os princípios éticos que norteiam a prática profissional dos engenheiros não são definidos por uma única entidade ou indivíduo específico. Há diferentes fontes e organizações que estabelecem a conduta ética a ser seguida por esses profissionais.

Assinale a alternativa que melhor apresenta essas fontes e organizações, segundo Cocian (2016):

A) Organizações profissionais, legislação e regulamentações, instituições de ensino, experiência profissional.

B) A Associação Mundial de Engenheiros, o Conselho de Ética, a Sociedade Internacional de Engenheiros e a Federação Internacional de Engenharia (FIE).

C) Os códigos de ética redigidos pelas empresas Apple, Microsoft, Google e Amazon.

D) As diretrizes éticas de partidos políticos, organizações ambientais, grupos de consumidores e clubes esportivos.

E) Os princípios éticos estabelecidos por escritores famosos, celebridades, filósofos antigos e artistas renomados.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Perda de Carga Localizada, Acessórios de Tubulação

Considerando a questão: "Qual a perda de carga singular em um conduto de 100 m, diâmetro de 100 mm, com um fluido escoando a 2 m/s, apresentando as seguintes singularidades rosqueadas na tubulação: válvula globo totalmente aberta e cotovelo de 45º com raio normal?".

Qual o valor do fator de atrito f na tubulação anteriormente citada? Qual valor do somatório de Ks tornaria a perda de carga singular idêntica à perda de carga linear?

A) 0,66 e 66,2.

B) 0,066 e 66,2.

C) 0,132 e 66,2.

D) 0,066 e 132,4.

E) 0,132 e 132,4.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Topografia

Azimute e Rumo

FGV-2015 - No lançamento do projeto geométrico de uma estrada, o topógrafo levantou que o azimute do ponto 10 para o 11 foi de 254º 22' 26''. Nesse caso, o rumo foi de:

A) 54º 22' 26'' S

B) 54º 22' 26'' NW

C) 74º 22' 26'' SW

D) 74º 22' 26'' N

E) 105º 3' 3'' SW
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

Como é chamada a área de relevo mais elevado entre cursos de água contíguos e que serve para delimitação das bacias hidrográficas?

A) Vale fluvial.

B) Colúvio.

C) Interflúvio.

D) Planalto.

E) Planície pluvial.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Transporte de fluidos por bombas

O objetivo no transporte de fluidos por bombas é transferir energia ao fluido, compensar as perdas por atrito e aumentar a vazão no transporte com diferença de altura ou de pressão. Suponha que escoe petróleo cru por uma tubulação horizontal com auxílio de uma bomba com eficiência de 85%. Qual potência deve ser fornecida na entrada da estação de bombeamento para vazão de 2,94m3/s? Considere que a queda de pressão estimada ao longo do escoamento é de 7,92MPa.

A) 23,30MW.

B) 27,41MW.

C) 19,80MW.

D) 85,00MW.

E) 7,96MW.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 55 usuários muito felizes estudando em nosso site.