Você está aqui: Java ::: Classes e Componentes ::: JTable

Entendendo a interface TableColumnModel

Quantidade de visualizações: 8326 vezes
A interface TableColumnModel foi idealizada para manter instâncias da classe TableColumn, onde cada instância representa uma única coluna de dados do TableModel. TableColumn é a classe responsável por gerenciar a exibição de uma coluna na GUI da JTable. Cada TableColumn tem um renderizador de célula, um editor de célula, um table header e um renderizador de célula para os títulos da tabela associados a ela.

Quando uma JTable é colocada em um JScrollPane seus títulos são colocados na parte COLUMN_HEADER do painel de rolagem e podem ser arrastados e redimensionados afim de reordenar ou alterar o tamanho das colunas. O renderizador do título de uma TableColumn é responsável por retornar o componente usado para a exibição do título da coluna, e o renderizador de células é responsável por retornar o componente usado para exibir cada célula.

Como acontece com os renderizadores de JList e JTree, estes renderizadores também agem como "carimbos" e não são interativos. Os componentes retornados pelos editores de células são completamente interativos. Renderizadores de células são instâncias de TableCellRenderer e editores de células são instâncias de CellEditor. Se nenhum destes são explicitamente definidos, versões padrões serão usadas baseadas no tipo da Class do tipo de dados correspondente ao TableModel.

O trabalho da interface TableColumnModel é gerenciar todas as instâncias de TableColumns, fornecendo controle sobre a ordem, seleção de colunas e tamanho de margens. Para suportar diferentes modos de seleção, a TableColumnModel mantém uma ListSelectionModel que permite seleções únicas, de intervalo único e seleções de múltiplos intervalos.

Link para compartilhar na Internet ou com seus amigos:

Java ::: Fundamentos da Linguagem ::: Estruturas de Controle

Java para iniciantes - Como criar laços for infinitos em Java

Quantidade de visualizações: 9442 vezes
Laços for infinitos em Java podem ser criado da seguinte forma:

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

for(;;){
  // bloco de instruções
}

Veja um exemplo:

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

import javax.swing.JOptionPane;

public class Estudos{
  public static void main(String[] args) {
    int valor;
    int soma = 0;

    // Lê continuamente até o usuário informar 0
    for(;;){
      // efetua a próxima leitura
      String str = JOptionPane.showInputDialog(null,
        "Informe um valor inteiro:\n(ou 0 para sair)",
         "Estudos", JOptionPane.QUESTION_MESSAGE);

      valor = Integer.parseInt(str);
  
      // testa se o laço pode ser finalizado
      if(valor == 0)
        break;
 
      soma += valor;
    }

    JOptionPane.showMessageDialog(null, "A soma é: " + soma,
       "Estudos", JOptionPane.INFORMATION_MESSAGE);
  }
}

Sempre que criar laços infinitos, tenha a certeza de fornecer um teste de parada dentro do corpo do laço. Do contrário seu programa só poderá ser interrompido matando-se o processo.


Java ::: Java para Engenharia ::: Geometria Analítica e Álgebra Linear

Java para Geometria Analítica e Álgebra Linear - Como efetuar a soma de matrizes usando Java

Quantidade de visualizações: 1622 vezes
A soma de matrizes (assim como a subtração e multiplicação) é parte integrante da disciplina de Álgebra Linear e seu cálculo é muito simples.

Assumindo duas matrizes A e B, ambas com a mesma quantidade de linhas e colunas, a matriz soma pode ser obtida da seguinte forma:

\[A + B = \left[\begin{matrix} 3 & 4 & -1 \\ 8 & 2 & 1 \\ 7 & 5 & -3 \end{matrix}\right] + \left[\begin{matrix} -2 & 6 & 4 \\ 1 & 8 & 9 \\ -4 & 10 & 3 \end{matrix}\right] = \left[\begin{matrix} 1 & 10 & 3 \\ 9 & 10 & 10 \\ 3 & 15 & 0 \end{matrix}\right] \]

Um elemento da matriz é representando por sua posição linha e coluna. Usamos a letra i para a linha e j para a coluna, ou seja, aij. Dessa forma, o elemento na primeira linha e primeira coluna da matriz é a11, o elemento na primeira linha e segunda coluna é a12 e assim por diante.

Então, a soma das duas matrizes é feita da seguinte forma: Cij = Aij + Bij.

E agora veja o código Java que declara duas matrizes matrizA e matrizB e obtém uma terceira (matrizC) contendo a soma das duas anteriores. Novamente, note o requisito de que as matrizes deverão ter o mesmo número de linhas e colunas:

----------------------------------------------------------------------
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[]){
    // declarar, construir e inicializar as matrizes
    int matrizA[][] = {{3, 4, -1}, {8, 2, 1}, {7, 5, -3}};
    int matrizB[][] = {{-2, 6, 4}, {1, 8, 9}, {-4, 10, 3}};
    
    // esta é a matriz soma
    int matrizSoma[][] = new int[3][3];  
    
    // e agora vamos prosseguir com a soma
    for(int i = 0; i < matrizA.length; i++){
      for(int j = 0; j < matrizA[0].length; j++){
        matrizSoma[i][j] = matrizA[i][j] + matrizB[i][j];     
      } 
    }
    
    // vamos exibir os valores da primeira matriz
    System.out.println("Elementos da matriz A:");
    for(int i = 0; i < matrizA.length; i++){
      for(int j = 0; j < matrizA[0].length; j++){
        System.out.printf("%5d  ", matrizA[i][j]);
      }
      System.out.println();
    }
    
    // vamos exibir os valores da primeira matriz
    System.out.println("\nElementos da matriz B:");
    for(int i = 0; i < matrizB.length; i++){
      for(int j = 0; j < matrizB[0].length; j++){
        System.out.printf("%5d  ", matrizB[i][j]);
      }
      System.out.println();
    }
    
    // vamos exibir os valores da matriz soma
    System.out.println("\nElementos da matriz soma:");
    for(int i = 0; i < matrizSoma.length; i++){
      for(int j = 0; j < matrizSoma[0].length; j++){
        System.out.printf("%5d  ", matrizSoma[i][j]);
      }
      System.out.println();
    }
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

Elementos da matriz A:
    3      4     -1  
    8      2      1  
    7      5     -3  

Elementos da matriz B:
   -2      6      4  
    1      8      9  
   -4     10      3  

Elementos da matriz soma:
    1     10      3  
    9     10     10  
    3     15      0



Java ::: Fundamentos da Linguagem ::: Tipos de Dados

Apostila Java para iniciantes - Como usar o tipo de dados referência em seus códigos Java

Quantidade de visualizações: 11468 vezes
O Java contém 8 tipos de dados primitivos e um tipo referência. No entanto, poucos livros dedicam exemplos a este último tipo. Vamos começar analisando o trecho de código abaixo:

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

public class Estudos{
  public static void main(String args[]){
    String nome = "Osmar J. Silva";  

    System.out.println(nome);    

    System.exit(0);
  }
}

Se observarmos este código, veremos que a variável nome não é um tipo primitivo e sim uma referência. Desta forma, qualquer variável ou constante que não seja do tipo primitivo é uma referência a um objeto de uma classe, interface, etc. Arrays não são tipos primitivos também. Assim, variáveis ou constantes que apontam para arrays (vetores e matrizes) também são referências.

É importante entender bem a noção de referências, visto que é por meio delas que acessamos um determinado objeto na memória. Além disso, como objetos e arrays são sempre passados por referência aos métodos Java, fica fácil entender como várias referências podem apontar para o mesmo objeto ao mesmo tempo. E, caso você tenha esquecido, os tipos primitivos nunca são passados por referêcia aos métodos. Em vez disso, eles são passados por valor (o que quer dizer que uma alteração nos argumentos fornecidos ao métodos não altera a cópia original da variável).


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: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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