Você está aqui: Java ::: Coleções (Collections) ::: ArrayList |
Como retornar o índice da última ocorrência de um elemento em uma ArrayList do Java usando a função lastIndexOf()Quantidade de visualizações: 9220 vezes |
Em algumas situações nós gostaríamos de pesquisar um valor em um ArrayList e retornar o índice de sua última aparição, para o caso desse elemento estar contido mais de uma vez na coleção. Para isso nós podemos usar o método lastIndexOf(). Se o elemento pesquisado não estiver na ArrayList, o valor -1 será retornado. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.ArrayList; public class Estudos{ public static void main(String[] args){ // cria uma ArrayList que conterá strings ArrayList<String> nomes = new ArrayList<String>(); // adiciona itens na lista nomes.add("Carlos"); nomes.add("Maria"); nomes.add("Fernanda"); nomes.add("Osmar"); nomes.add("Maria"); // obtém o índice da última ocorrência do // nome "Maria" int indice = nomes.lastIndexOf("Maria"); System.out.println("O último índice do nome pesquisado é: " + indice); System.exit(0); } } Ao executarmos este código Java nós teremos o seguinte resultado: O último índice do nome pesquisado é: 4 |
![]() |
Java ::: Classes e Componentes ::: JTable |
Java Swing - Como colorir o fundo das células de uma JTable baseado em seus valoresQuantidade de visualizações: 9 vezes |
Nesta dica veremos como é possível criar uma classe personalizada que extende a classe JLabel e implementa a interface TableCellRenderer e usá-la como renderizador das células de uma JTable. Dessa forma conseguiremos aplicar uma cor diferente a cada célula dependendo do seu valor. Veja o resultado na figura abaixo:![]() Veja agora 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 colorir o fundo das células da segunda coluna // se o valor encontrado for menor que 20 TableCellRenderer tcr = new Colorir(); TableColumn column = tabela.getColumnModel().getColumn(1); 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 Colorir extends JLabel implements TableCellRenderer{ public Colorir(){ setOpaque(true); } @Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){ if(Integer.parseInt(value.toString()) < 20){ setBackground(Color.YELLOW); } else{ setBackground(table.getBackground()); } setText(value.toString()); return this; } @Override public void validate() {} @Override public void revalidate() {} @Override protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) {} @Override public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue) {} } |
Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como criar, preencher e exibir os valores de uma matriz de duas dimensões de inteiros em Java - RevisadoQuantidade de visualizações: 12269 vezes |
Nesta dica mostrarei como declarar e instanciar uma matriz (array) de duas dimensões de ints em Java. Note que temos duas linhas e cada linha possui duas colunas. Neste exemplo os valores da matriz já estão pré-definidos, mas você pode ver mais dicas nessa seção para aprender como solicitar que o usuário informe os valores de cada linha de coluna. Veja o código completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; public class Estudos{ public static void main(String[] args){ int valores[][] = {{1, 2, 3}, {4, 5, 6}}; // varre todos os elementos do array e os // exibe usando linhas e colunas for(int lin = 0; lin < valores.length; lin++){ for(int col = 0; col < valores[lin].length; col++){ System.out.printf("%d ", valores[lin][col]); } System.out.println(); } System.exit(0); } } Ao executar este exemplo nós teremos o seguinte resultado: 1 2 3 4 5 6 Esta dica foi revisada e testada no Java 8. |
Java ::: Pacote java.lang ::: String |
Como verificar se uma string Java contém uma determinada sequencia de caracteres (ou substring) usando o método contains()Quantidade de visualizações: 11609 vezes |
Em algumas situações precisamos verificar se uma sequencia de caracteres ou substring está contida em uma string. Para isso podemos usar o método contains() da classe String. Veja sua assinatura:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public boolean contains(CharSequence s) Note que o método recebe um argumento do tipo CharSequence, que é uma interface implementada pelas classes CharBuffer, Segment, String, StringBuffer e StringBuilder. O método retorna true se a sequencia de caracteres for encontrada e false em caso contrário. Veja um trecho de código no qual usamos este método para verificar se uma palavra está contida em uma frase: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Main { public static void main(String[] args) { // vamos declarar uma string String frase = "Gosto muito de Java e PHP"; // vamos verificar se a string contém a palavra "Java" if(frase.contains("Java")){ System.out.println("A frase contém a substring informada"); } else{ System.out.println("A frase não contém a substring informada"); } } } Este método pode atirar uma exceção do tipo NullPointerException se o argumento fornecido for null. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Códigos Fonte |
![]() 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 |
![]() 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 |