Você está aqui: Java ::: Dicas & Truques ::: Arquivos e Diretórios

Usando JFileChooser para escolher um diretório a partir de um JFrame

Quantidade de visualizações: 24912 vezes
// Este exemplo mostra como selecionar diretório usando
// JFileChooser a partir de uma JFrame

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

public class Estudos extends JFrame{
    public Estudos(){
        super("Escolher um diretório usando JFileChooser");
    
        Container c = getContentPane();
        FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
        c.setLayout(layout);
        
        JButton btn = new JButton("Escolher Diretório");
        btn.addActionListener(
            new ActionListener(){
                public void actionPerformed(ActionEvent e){
                    JFileChooser fc = new JFileChooser();
                    
                    // restringe a amostra a diretorios apenas
                    fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
                    
                    int res = fc.showOpenDialog(null);
                    
                    if(res == JFileChooser.APPROVE_OPTION){
                        File diretorio = fc.getSelectedFile();
                        JOptionPane.showMessageDialog(null, "Voce escolheu o diretório: " + diretorio.getName());
                    }
                    else
                        JOptionPane.showMessageDialog(null, "Voce nao selecionou nenhum diretorio."); 
                }
            }   
        );
    
        c.add(btn);
        
        setSize(400, 200);
        setVisible(true);
    }
    
    public static void main(String[] args) {
        Estudos app = new Estudos();
        app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Pesquisando um valor em uma matriz de int e retornando o índice no qual o mesmo foi encontrado

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

Escreva um programa Java GUI ou console que declara, constrói e inicializa uma matriz de 5 inteiros. Em seguida peça ao usuário para informar um valor inteiro e informe se o valor lido está contido na matriz. Se o valor for encontrado na matriz, retorne seu índice (lembre-se de que os índices dos elementos em uma matriz Java começam em 0). A declaração, construção e inicialização da matriz pode ser feita da seguinte forma:

// declara, constrói e inicializa uma matriz de 5 inteiros
int valores[] = {4, 21, 8, 120, 1};
Dica: Na resolução abaixo eu usei um objeto JOptionPane para ler o valor a ser pesquisado. Se preferir, use um objeto da classe Scanner para leitura.

Resposta/Solução:

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

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

package estudos;

import javax.swing.JOptionPane;

public class Estudos {
  public static void main(String[] args) {
    // declara, constrói e inicializa uma matriz de 5 inteiros
    int valores[] = {4, 21, 8, 120, 1};
        
    // vamos ler um valor inteiro
    int pesquisa = Integer.parseInt(JOptionPane.showInputDialog("Valor:"));
        
    // vamos verificar se o valor está contido na matriz e retornar seu índice
    int pos = -1; // índice não existente na matriz
    for(int i = 0; i < valores.length; i++){
      if(valores[i] == pesquisa){
        pos = i; // encontrou? vamos anotar este índice
        break;
      }
    }
        
    // vamos mostrar o resultado
    if(pos > -1){
      JOptionPane.showMessageDialog(null, "O valor foi encontrado no índice: " +
        pos);
    }
    else{
      JOptionPane.showMessageDialog(null, "O valor não foi encontrado na matriz");
    }
  }
}

Uma idéia na resolução deste exercício é inicializar a variável que guardará o índice do elemento pesquisado com o valor -1. Assim, se no final da pesquisa o valor ainda for -1, sabemos que o elemento não foi encontrado.


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

Como remover itens repetidos de uma ArrayList usando um objeto da classe LinkedHashSet do Java

Quantidade de visualizações: 612 vezes
Em algumas situações nós temos uma ArrayList com algumas repetições e gostaríamos de remover os itens duplicados mas gostaríamos de manter a ordem original dos elementos. Para isso nós podemos usar um objeto da classe LinkedHashSet.

Como sabemos, classes que implementam a interface Set possuem a habilidade de recusar itens repetidos. A classe LinkedHashSet, além de recusar duplicidades de valores, mantém a ordem de inserção dos elementos.

Veja o código Java 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;
import java.util.LinkedHashSet;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar uma ArrayList de linguagens de programação
    ArrayList<String> lista = new ArrayList<>();
    
    // vamos adicionar alguns elementos no ArrayList. Note
    // que temos itens repetidos
    lista.add("Java");
    lista.add("Scala");
    lista.add("Ruby");
    lista.add("Scala");
    lista.add("Python");
    lista.add("Ruby");
    lista.add("Delphi");
 
    // vamos mostrar o conteúdo do ArrayList
    System.out.println("O conteúdo do ArrayList é: " +
      lista.toString());
    
    // vamos criar uma instância da classe LinkedHashSet
    LinkedHashSet<String> set = new LinkedHashSet<>(lista);
 
    // agora construímos uma nova ArrayList sem repetições a
    // partir do LinkedHashSet
    ArrayList<String> lista2 = new ArrayList<>(set);
 
    // e mostramos o resultado
    System.out.println("ArrayList sem repetições: " +
      lista2.toString());
  }
}

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

O conteúdo do ArrayList é: [Java, Scala, Ruby, Scala, Python, Ruby, Delphi]
ArrayList sem repetições: [Java, Scala, Ruby, Python, Delphi]

Note como a ordem dos elementos no ArrayList original foi respeitada.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Exercícios Resolvidos de Java - Um programa que lê dois números inteiros e mostra o menor

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

Escreva um programa Java que solicita dois números inteiros ao usuário e mostra o menor deles. Mostre uma mensagem informando se os dois números são iguais. Sua saída deverá ser parecida com:

Informe o primeiro número: 34
Informe o segundo número: 30
O menor número é: 30

Informe o primeiro número: 12
Informe o segundo número: 43
O menor número é: 12

Informe o primeiro número: 7
Informe o segundo número: 7
Os dois números são iguais.
Resposta/Solução:

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

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

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
    
    // vamos solicitar os dois números inteiros
    System.out.print("Informe o primeiro número: ");
    int num1 = Integer.parseInt(entrada.nextLine());
    System.out.print("Informe o segundo número: ");
    int num2 = Integer.parseInt(entrada.nextLine());
    
    // o primeiro número é menor que o segundo?
    if(num1 < num2){
      System.out.println("O menor número é: " + num1);  
    }
    else if(num2 < num1){ // o segundo número é menor que o primeiro?
      System.out.println("O menor número é: " + num2);  
    }
    else{
      System.out.println("Os dois números são iguais.");  
    }
    
    System.out.println("\n");
  }
}



Mais Desafios de Programação e 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á 56 usuários muito felizes estudando em nosso site.