Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

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

Entendendo a classe DefaultMutableTreeNode

Quantidade de visualizações: 8115 vezes


A classe DefaultMutableTreeNode é uma implementação concreta da interface MutableTreeNode. Um objeto desta classe pode ter um objeto associado, e tal objeto pode ser obtido com uma chamada ao método getUserObject(). Esta funcionalidade é útil quando queremos associar o título de um nós a um identificador de um registro em uma tabela de um banco de dados.

Esta classe armazena todos os seus nós filhos em um Vector chamado children, que é associado ao método children(), que retorna um Enumeration de todos os nós filhos. Podemos também usar o método getChildAt() para obter o nó correspondente a um determinado índice.

Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Exercícios Resolvidos de Java - Como escrever uma função Java que recebe dois números inteiros e retorna a soma desses dois valores como um inteiro

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

Escreva um método estático em Java chamado somar() que recebe dois números inteiros e retorna a soma desses dois valores como um inteiro. Este método deverá ter a seguinte assinatura:

public static int somar(int a, int b){
  // sua implementação aqui
}
Este método deverá, obrigatoriamente, estar na classe principal (aquela que contém o método main()). Após a implementação do método somar(), vá até o método main() e peça ao usuário para informar dois números inteiros. Em seguida faça uma chamada ao método somar() passando os dois valores como argumentos, obtenha o retorno e exiba-o.

Sua saída deverá ser parecida com:

Informe o primeiro número: 4
Informe o segundo número: 3
A soma dos dois números é: 7
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir ao usuário que informe dois valores inteiros
    System.out.print("Informe o primeiro número: ");
    int n1 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o segundo número: ");
    int n2 = Integer.parseInt(entrada.nextLine());
    
    // vamos efetuar uma chamada ao método somar() e obter seu retorno
    int resultado = somar(n1, n2);
    
    // finalmente mostramos o resultado
    System.out.println("A soma dos dois números é: " + resultado);
  }
  
  // método estático que recebe dois inteiros e retorna a soma como um número inteiro
  public static int somar(int a, int b){
    int soma = a + b; // soma os dois números
    return soma; // retorna a soma para o método chamado
  }
}



Java ::: Java Swing - Componentes Visuais ::: JList

Como retornar os índices dos itens selecionados em uma JList de seleção múltipla do Java Swing

Quantidade de visualizações: 7804 vezes
Em outra dica desta seção nós vimos como obter e retornar os valores selecionados em uma JList de múltipla seleção do Java Swing. Agora veremos como retornar os índices dos valores selecionados. Para isso nós vamos usar o método getSelectedIndices(), que retorna um vetor (array) de inteiros.

Note o uso da constante ListSelectionModel.MULTIPLE_INTERVAL_SELECTION fornecida para o método setSelectionMode() da JList para indicar a forma de seleção que estamos usando no exemplo.

Veja o código Java Swing completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

package estudos;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Estudos extends JFrame{
  JList lista;  

  public Estudos() {
    super("A classe JList");
    
    Container c = getContentPane();
    c.setLayout(new FlowLayout(FlowLayout.LEFT));
    
    // Cria os itens da lista
    String nomes[] = {"Carlos", "Marcelo", "Fabiana",
      "Carolina", "Osmar"};

    // Cria a JList
    lista = new JList(nomes);
 
    // Define a seleção múltipla para a lista
    lista.setSelectionMode(
      ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);

    // Um botão que permite obter os índices do itens 
    // selecionados
    JButton btn = new JButton("Obter índices selecionados");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          int[] indices = lista.getSelectedIndices();
          String res = "Índices selecionados:\n";

          for(int i = 0; i < indices.length; i++)
            res += indices[i] + "\n";

          JOptionPane.showMessageDialog(null, res);
        }
      }
    );

    // Adiciona a lista à janela
    c.add(new JScrollPane(lista));

    // Adiciona o botão à janela
    c.add(btn);  

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

Lembre-se que as teclas Ctrl ou Shift devem estar pressionadas enquanto escolhemos os itens de uma JList de seleção múltipla.


Java ::: Dicas & Truques ::: Mouse e Teclado

Como retornar as coordenadas do mouse durante um evento mouseClicked em uma janela JFrame do Java Swing

Quantidade de visualizações: 10834 vezes
Nesta dica eu mostro como podemos obter as coordenadas do mouse no momento que o usuário clica em uma janela JFrame de nossas aplicações Java Swing. Note que exibimos as coordenadas x e y do mouse na barra de títulos da janela JFrame.

Saber como retornar as coordenadas do mouse durante um evento é uma das técnicas úteis para o desenvolvimento de jogos e aplicativos gráficos em Java.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

package arquivodecodigos;

/*
  Este exemplo mostra como obter as coordenadas
  do mouse durante um evento.
*/
 
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class Estudos extends JFrame{
  public Estudos() {
    super("Eventos do Mouse e Teclado");
    Container c = getContentPane();
    FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
    c.setLayout(layout);
     
    this.addMouseListener(
      new MouseAdapter(){
        @Override
        public void mouseClicked(MouseEvent e){
          setTitle("X = " + e.getX() + "; Y = " + e.getY());
        }
      }
    );    
 
    setSize(350, 250);
    setVisible(true);
  }
   
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres

Exercícios Resolvidos de Java - O caractere ausente. Escreva um método Java que receba uma string não vazia e um inteiro positivo.

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

O desafio do caractere faltante.

Escreva um programa Java contendo um método que receberá uma palavra, frase ou texto e um inteiro positivo. Este método deverá retornar a palavra, frase ou texto com o caractere removido no índice especificado pelo inteiro fornecido como segundo argumento para o método.

Certifique-se de que a string passada para o método não esteja vazia e de que o valor inteiro no segundo argumento não esteja fora da faixa permitida, ou seja, não seja menor que 0 nem maior que o comprimento da string - 1.

Sua saída deverá ser parecida com:

Informe uma palavra, frase ou texto: JAVASCRIPT
Informe um número inteiro: 4
O resultado é: JAVACRIPT
Resposta/Solução:

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

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

package estudos;

import java.util.Scanner;

public class Estudos{
  public static void main(String args[]){
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos pedir para o usuário informar uma palavra, frase ou texto
    System.out.print("Informe uma palavra, frase ou texto: ");
    String str = entrada.nextLine().trim();
    // agora vamos pedir para o usuário informar um número inteiro
    System.out.print("Informe um número inteiro: ");
    int indice = Integer.parseInt(entrada.nextLine());
    
    // os dados são válidos?
    if(str.isEmpty()){
      System.out.println("\nA string informada está vazia\n");
    }
    else if(indice < 0 || indice > str.length() - 1){
      System.out.println("\nO índice não está na faiza permitida\n");
    }
    else{
      String resultado = caractereFaltante(str, indice);
      System.out.println("O resultado é: " + resultado);
    }
  }
  
  public static String caractereFaltante(String str, int indice){
    // primeiro nós obtemos uma substring que vai do primeiro
    // índice até o indice informado pelo usuário, sem incluí-lo
    String inicio = str.substring(0, indice);
    
    // agora obtemos o restante da string a partir do índice informado
    // pelo usuário, sem incluí-lo, é claro
    String fim = str.substring(indice + 1, str.length());
    
    return inicio + fim;
  }
}



Java ::: Classes e Componentes ::: JTable

Java Swing - Como alterar a cor de fundo dos títulos de uma JTable usando o método setBackground() da classe JTableHeader

Quantidade de visualizações: 145 vezes
Nesta dica mostrarei como podemos chamar o método getTableHeader() da classe JTable para obter um objeto JTableHeader e usar seu método setBackground() para definir a cor de fundo dos títulos da tabela JTable.

Veja o trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

JTableHeader titulos = tabela.getTableHeader();
titulos.setBackground(Color.ORANGE);

Note que "tabela" é uma referência a um objeto da classe JTable.


Java ::: Dicas & Truques ::: Fuso Horários

Como representar fuso horário em Java usando a classe TimeZone

Quantidade de visualizações: 12976 vezes
A classe abstrata TimeZone (do pacote java.util) representa um determinado fuso horário e também identifica o horário de verão (daylight savings) de um determinado país ou região. Veja sua posição na hierarquia de classes Java:

java.lang.Object
  java.util.TimeZone
A classe TimeZone implementa ainda as interfaces Serializable e Cloneable e sua classe derivada conhecida é SimpleTimeZone.[br][br]

A melhor forma de entender o fuso horário, é consultando suas configurações regionais no Painel de Controle de seu sistema. É comum, em máquinas brasileiras encontrarmos o fuso horário "GMT -03:00 - Brasilia". Isso quer dizer que a hora oficial do Brasil é -3 horas em relação ao horário de Greenwich, Londres. Não podemos nos esquecer do horário de verão, que reduz esta diferença para -2 horas na maior parte do país.

Por padrão, A JVM detecta e trabalha com o fuso horário da máquina na qual está sendo executada. Veja um trecho de código que obtém este TimeZone padrão:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    TimeZone timeZone = TimeZone.getDefault();
    System.out.println(timeZone.getDisplayName());
    System.out.println(timeZone.getID());
  } 
}

Ao executar este código você terá um resultado semelhante à:

Brasilia Time
America/Sao_Paulo

Aqui nós usamos o método estático getDefault() para retornar o TimeZone padrão e os métodos de instância getDisplayName() e getID() para obter as informações sobre o fuso horário.


Java ::: Dicas & Truques ::: Data e Hora

Como validar uma data em Java usando a classe GregorianCalendar

Quantidade de visualizações: 13094 vezes
Esta dica mostra a você como validar uma data em Java usando a classe GregorianCalendar. Veja que estamos usando o método set() para atribuir valores aos campos ano, mês e dia. Contudo, o valor para o dia está incorreto. Desta forma, ao chamarmos o método getTime() uma exceção do tipo IllegalArgumentException será lançada. Veja o código:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    try{
      GregorianCalendar data = new GregorianCalendar();
      data.setLenient(false);
      data.set(GregorianCalendar.YEAR, 2008); // ano
      data.set(GregorianCalendar.MONTH, 11); // mês
      // dia inválido
      data.set(GregorianCalendar.DATE, 32);
      
      // a validação da data ocorre aqui
      Date temp = data.getTime();
    }
    catch(Exception e){
      System.out.println("Data inválida.");
      e.printStackTrace();
    }
  } 
}

Ao executarmos este código teremos o seguinte resultado:

Data inválida.
java.lang.IllegalArgumentException: DAY_OF_MONTH
at java.util.GregorianCalendar.computeTime(Unknown 
Source)
at java.util.Calendar.updateTime(Unknown Source)
at java.util.Calendar.getTimeInMillis(Unknown Source)
at java.util.Calendar.getTime(Unknown Source)
at Estudos.main(Estudos.java:14)



Java ::: Dicas & Truques ::: Data e Hora

Como construir uma data no passado ou futuro em Java usando a classe GregorianCalendar

Quantidade de visualizações: 8241 vezes
Esta dica mostra como construir uma data no passado ou futuro na linguagem Java usando a classe GregorianCalendar, que é uma classe derivada e concreta da classe Calendar. Veja a linha na qual informamos a data a ser criada:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

Calendar data = new GregorianCalendar(2008, 11, 13);

Aqui nós estamos usando o construtor da classe GregorianCalendar que requer três valores inteiros. O ano, o mês e o dia. O mês é informado como um valor inteiro na faixa de 0 a 11, ou seja, 0 para janeiro, 1 para fevereiro e assim por diante. Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

package arquivodecodigos;

import java.util.*;
import java.text.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // vamos construir a data "13/12/2008"
    Calendar data = new GregorianCalendar(2008, 11, 13); 

    // vamos exibir o resultado
    Format formato = new SimpleDateFormat(
      "EEEE, dd 'de' MMMM 'de' yyyy");
    System.out.println(formato.format(data.getTime()));
  } 
}

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

Sábado, 13 de Dezembro de 2008


Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

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á 26 usuários muito felizes estudando em nosso site.