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

Como usar um JFormattedTextField nas células de uma JTable

Quantidade de visualizações: 9811 vezes
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;
import javax.swing.table.*;
import java.text.*;

public class Estudos extends JFrame{
  MaskFormatter cep;
  
  public Estudos(){
    super("Exemplo de uma tabela simples");
		
    try{
      cep = new MaskFormatter("#####-###");
      cep.setPlaceholderCharacter('_');
    }
    catch(ParseException excp){
      //
    }
    
    // colunas da tabela
    String[] colunas = {"Nome", "Cidade", "CEP"};
		
    // conteúdo da tabela	
    Object[][] conteudo = {
        {"Osmar J. Silva", "Goiânia", "54232-654"},
        {"Maria Clara Gomes", "São Paulo", "65476-433"}
    };
        
    // constrói a tabela
    JTable tabela = new JTable(conteudo, colunas);
    
    TableColumn col = tabela.getColumnModel().getColumn(2);
    col.setCellEditor(new MyJFTEditor(cep));
    
    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 MyJFTEditor extends DefaultCellEditor{
  public MyJFTEditor(MaskFormatter cep){
    super(new JFormattedTextField(cep));
  }
}



Java ::: Pacote java.lang ::: String

Como retornar os caracteres de uma string como um vetor de char usando o método getChars() da classe String do Java

Quantidade de visualizações: 6849 vezes
O método getChars() da classe String pode ser usado quando queremos retornar todos ou parte dos caracteres de uma string como uma matriz de char. Veja sua assinatura:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

O parâmetro srcBegin indica o índice do primeiro caractere a ser copiado. O parâmetro srcEnd indica o índice APÓS o último caractere a ser copiado. O parâmetro dst é uma matriz de char para a qual os caracteres serão copiados e dstBegin indica o offset (ponto inicial) da matriz a ser preenchida.

Veja um trecho de código no qual copiamos os 5 primeiros caracteres de uma string para uma matriz de char chamada letras:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Ao executarmos este código teremos o seguinte resultado:

C u i a b

O método getChars() pode atirar uma exceção do tipo IndexOutOfBoundsException se valores inválidos forem fornecidos aos seus parâmetros.


Java ::: Coleções (Collections) ::: ArrayList

Como rotacionar os elementos de uma ArrayList do Java para frente ou para trás usando o método rotate()

Quantidade de visualizações: 9654 vezes
Nesta dica mostrarei como podemos usar o método rotate() da classe Collections da linguagem Java para rotacionar os elementos de uma ArrayList. Veja sua assinatura:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso


Este método faz com que um elemento na posição i seja movido para a posição (distance + i) % list.size().

Se você quiser inverter a ordem da rotação, forneça um valor negativo para o argumento distance.

Veja o código completo para o exemplo:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

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

Antes da rotação:

Carlos
Maria
Fernanda
Osmar

Depois da rotação:

Osmar
Carlos
Maria
Fernanda


Java ::: Pacote java.lang ::: String

Como obter um objeto String a partir de um StringBuffer ou StringBuilder do Java

Quantidade de visualizações: 2098 vezes
As classes StringBuffer e StringBuilder possuem as mesmas funcionalidades. A diferença é que StringBuilder não é segura em relação à threads e está sendo rapidamente substituída pela classe StringBuffer. Ambas são parecidos com uma String, com a diferença que um StringBuffer ou StringBuilder pode ser modificado in-place, ou seja, modificações em seu conteúdo não geram uma nova cópia, como acontece com objetos da classe String.

Nesta dica eu mostrarei como criar novos objetos String a partir do conteúdo de um StringBuffer ou StringBuilder. Vamos começar analisando os construtores da classe String que permitem passar um objeto StringBuffer ou StringBuilder:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Resultado parecido pode ser obtido sem o uso dos construtores String(StringBuilder builder) e String(StringBuffer buffer). Veja:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

Agora nós usamos o método toString() da classe StringBuffer para converter seu conteúdo em uma string e atribuí-lo à variável fraseString.


Java ::: Coleções (Collections) ::: Stack

Java Collections - Como adicionar novos elementos a uma Stack Java

Quantidade de visualizações: 8250 vezes
Elementos são adicionados a uma pilha (um objeto da classe Stack) por meio do método push(). Veja sua assinatura:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso
Veja que este método nos permite adicionar o elemento E no topo da pilha e ao mesmo tempo obter uma referência ao elemento adicionado. É claro que raramente esta referência é útil, mas é bom saber exatamente a operação fornecida pelo método.

Veja um trecho de código no qual adicionamos três elementos à pilha:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso

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

Tamanho da pilha antes: 0
Tamanho da pilha agora: 3


Java ::: Lista de Exercícios Resolvidos (Algorítmos Resolvidos) ::: Recursão (Recursividade)

Exercícios Resolvidos de Java - Um método recursivo que recebe um valor inteiro e o exibe na ordem inversa

Quantidade de visualizações: 3426 vezes
Pergunta/Tarefa:

Escreva um método recursivo que recebe um valor inteiro (com qualquer quantidade de dígitos) e o exibe na ordem inversa. Se o método receber o valor 467, o valor inverso será 764. Seu método deverá possuir a seguinte assinatura:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso
Observe que você poderá usar, na resolução, somente os operadores aritméticos. Não é permitido o uso de métodos adicionais ou presentes em classes da plataforma Java.

Sua saída deverá ser parecida com:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

Este trecho de código ou resolução de exercício faz parte do Super Pack +10.000 Dicas e Truques de Programação e +500 Exercícios Resolvidos em Java, Delphi, C#, C, C++, Python, VB.NET, Golang, Pascal, Ruby, PHP, e várias outras linguagens.

Liberar Acesso



Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Linguagens Mais Populares

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

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..


© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português