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 ::: Desafios e Lista de Exercícios Resolvidos ::: ArrayList

Como criar uma ArrayList de Alunos, inserir novos alunos e listá-los usando um menu switch - Desafio de Programação Resolvido em Java

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

Escreva um programa Java contendo uma ArrayList de objetos da classe Aluno. Cada aluno deverá ter nome, idade e curso. Seu código deverá usar um menu switch com as opções de cadastrar novo aluno, listar todos os alunos e sair. Além disso, a classe Aluno deverá apresentar construtores vazio e cheio e usar encapsulamento de dados (variáveis de instância marcadas como private).

Sua saída deverá ser parecida com:

1. Cadastrar Novo Aluno
2. Listar Todos os Alunos
3. Sair
Sua opção: 1

Nome do aluno: OSMAR J SILVA
Idade do aluno: 43
Curso do aluno: ENGENHARIA CIVIL

Aluno cadastrado com sucesso.

1. Cadastrar Novo Aluno
2. Listar Todos os Alunos
3. Sair
Sua opção: 
Resposta/Solução:

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

Vamos começar com o código para a classe Aluno.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;

// definição da classe Aluno
public class Aluno {
  private String nome;
  private int idade;
  private String curso;

  // construtor vazio
  public Aluno() {
  }

  // construtor cheio
  public Aluno(String nome, int idade, String curso) {
    this.nome = nome;
    this.idade = idade;
    this.curso = curso;
  }

  public String getNome() {
    return nome;
  }

  public void setNome(String nome) {
    this.nome = nome;
  }

  public int getIdade() {
    return idade;
  }

  public void setIdade(int idade) {
    this.idade = idade;
  }

  public String getCurso() {
    return curso;
  }

  public void setCurso(String curso) {
    this.curso = curso;
  }
}

Agora veja o código para a classe principal, que chamei de Estudos.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.ArrayList;
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 criar uma ArrayList de objetos Aluno
    ArrayList<Aluno> alunos = new ArrayList();
    
    // agora vamos criar o menu de opções
    while(true){
      System.out.println("1. Cadastrar Novo Aluno");
      System.out.println("2. Listar Todos os Alunos");
      System.out.println("3. Sair");
      System.out.print("Sua opção: ");
      int opcao = Integer.parseInt(entrada.nextLine());
      
      switch(opcao){
        // cadastra um novo aluno
        case 1:
          // vamos pedir os dados do aluno
          System.out.print("\nNome do aluno: ");
          String nome = entrada.nextLine();
          System.out.print("Idade do aluno: ");
          int idade = Integer.parseInt(entrada.nextLine());
          System.out.print("Curso do aluno: ");
          String curso = entrada.nextLine();
          
          // agora criamos uma nova instância da classe Aluno
          Aluno a = new Aluno(nome, idade, curso);
          
          // a colocamos o aluno na ArrayList
          alunos.add(a);
          
          // para finalizar mostramos uma mensagem de sucesso.
          System.out.println("\nAluno cadastrado com sucesso.\n");
          
          break;
        
        // lista todos os alunos do ArrayList  
        case 2:
          System.out.println("\nListagem de alunos:\n");
          
          // percorre todos os alunos no ArrayList
          for(int i = 0; i < alunos.size(); i++){
            Aluno aluno = alunos.get(i);
            System.out.println("Nome: " + aluno.getNome());
            System.out.println("Idade: " + aluno.getIdade());
            System.out.println("Curso: " + aluno.getCurso() + "\n");
          }
          
          break;
          
        // sai do programa  
        case 3:
          System.out.println("\nObrigado por usar o programa.\n");
          System.exit(0);
      }
    }
  }
}


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 - Declarar e construir uma matriz de 10 int, pedir ao usuário para informar os valores dos elementos, mostrar a média dos valores informados e a quantidade de valores acima da média

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

Escreva um programa Java console ou GUI que declara e constrói uma matriz de 10 inteiros. Em seguida peça ao usuário para informar os 10 valores e armazene-os na matriz. Finalmente obtenha a média aritmética dos valores informados e mostre quantos valores estão acima da média.

Seu programa deverá exibir a seguinte saída (no caso de uma aplicação Console):

Informe o 1º valor: 4
Informe o 2º valor: 12
Informe o 3º valor: 9
Informe o 4º valor: 6
Informe o 5º valor: 4
Informe o 6º valor: 3
Informe o 7º valor: 7
Informe o 8º valor: 2
Informe o 9º valor: 3
Informe o 10º valor: 1
A média dos valores é: 5.0
Quantidade de valores acima da média: 4 
Dica: Use um objeto da classe Scanner para obter a entrada do usuário.

Resposta/Solução:

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

----------------------------------------------------------------------
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 Main {
  public static void main(String[] args) {
    // vamos declarar e instancia um objeto da classe Scanner
    Scanner entrada = new Scanner(System.in);

    // vamos declarar e construir uma matriz de 10 ints
    int valores[] = new int[10];

    double media; // média dos valores
    int soma = 0; // soma dos valores lidos
    int quantAcimaMedia = 0; // quantidade de valores acima da média

    // vamos solicitar ao usuário que informe os 10 valores inteiros
    // e vamos armazená-los na matriz
    for(int i = 0; i < valores.length; i++){
      System.out.print("Informe o " + (i + 1) + "º valor: ");
      int valor = Integer.parseInt(entrada.nextLine());
      valores[i] = valor;

      // vamos adicionar este valor à soma
      soma = soma + valor;
    }

    // vamos obter a média dos valores lidos
    media = (soma / valores.length);

    // agora precisamos obter a quantidade de valores acima da média
    for(int i = 0; i < valores.length; i++){
      if(valores[i] > media){
        quantAcimaMedia++;
      }
    }

    // vamos exibir os resultados
    System.out.println("A média dos valores é: " + media);
    System.out.println("Quantidade de valores acima da média: " + 
      quantAcimaMedia);
  }
}



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos

Exercícios Resolvidos de Java - Escreva uma classe Biblioteca que possui uma ArrayList de objetos da classe Livro. Forneça um menu para listar, cadastrar, pesquisar e excluir livros

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

Escreva um programa Java contendo duas classes: Biblioteca e Livro. A classe Biblioteca deverá ter uma coleção de livros, ou seja, uma ArrayList de objetos da classe Livro. Além da coleção de livros a classe Biblioteca deverá conter um atributo nome, que será informado assim que a classe for instanciada.

A classe Livro, por sua vez, deverá possuir os atributos id, titulo, autor e paginas. O atributo id deverá ser auto-incremento, isto é, 1 para o primeiro livro cadastrado, 2 para o segundo, e assim por diante. Além disso, a exclusão de livros deverá ser feita de acordo com o seu id ou título.

Seu programa deverá exibir um menu de opções para as diversas operações da biblioteca. Uma boa opção em Java é usar a estrutura switch case para a criação do menu de opções. Atenção: todos os métodos de manipulação de livros deverão estar na classe Biblioteca, e não na classe principal do programa Java.

Para finalizar, tanto a classe Biblioteca quanto a classe Livro deverão apresentar boas práticas de programação orientada a objetos: nomenclatura correta de classes, atributos e métodos, encapsulamento de dados e construtores.

Sua saída deverá ser parecida com:

-------------------------------------------------
:: Biblioteca Programação e Artes ::
-------------------------------------------------
Bem-vindo(a) ao sistema. Escolha a opção desejada

1 - Novo Livro
2 - Listar Livros
3 - Pesquisar Livro
4 - Excluir Livro
5 - Sair

Sua opção: 1

Título: JAVA PARA INICIANTES
Autor: OSMAR J SILVA
Quant Páginas: 480

O livro foi cadastrado com sucesso
Resposta/Solução:

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

Código para a classe Livro, que deve estar no arquivo Livro.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;

// definição da classe Livro
public class Livro {
  private int id; // id do livro. Não pode repetir
  private String titulo;
  private String autor;
  private int paginas;
  
  // construtor vazio da classe Livro
  public Livro() {}
  
  // construtor cheio da classe Livro
  public Livro(int id, String titulo, String autor, int paginas) {
    this.id = id;
    this.titulo = titulo;
    this.autor = autor;
    this.paginas = paginas;
  }

  public int getId() {
    return id;
  }

  public void setId(int id) {
    this.id = id;
  }

  public String getTitulo() {
    return titulo;
  }

  public void setTitulo(String titulo) {
    this.titulo = titulo;
  }

  public String getAutor() {
    return autor;
  }

  public void setAutor(String autor) {
    this.autor = autor;
  }

  public int getPaginas() {
    return paginas;
  }

  public void setPaginas(int paginas) {
    this.paginas = paginas;
  }
}

Código para a classe Biblioteca, que deve estar no arquivo Biblioteca.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;

// imports necessários
import java.util.ArrayList;
import java.util.Scanner;

// definição da classe Biblioteca
public class Biblioteca {
  String nome;
  ArrayList<Livro> livros; // ArrayList para guardar os livros
  // variável do tipo int para gerar IDs auto-incremento para os livros
  int idUltimoLivroCadastrado = 0;
  
  // construtor da classe
  public Biblioteca(String nome) {
    this.nome = nome;
    this.livros = new ArrayList();
  }
  
  // exibe o menu de opções da biblioteca
  public void exibirMenu(){
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // variáveis temporárias
    Livro temp;
    String pesquisaLivro;
    
    // um laço infinito com as opções do menu
    while(true){
      System.out.println("\n-------------------------------------------------");
      System.out.println(":: " + this.nome + " ::");
      System.out.println("-------------------------------------------------");
      System.out.println("Bem-vindo(a) ao sistema. Escolha a opção desejada\n");
      System.out.println("1 - Novo Livro");
      System.out.println("2 - Listar Livros");
      System.out.println("3 - Pesquisar Livro");
      System.out.println("4 - Excluir Livro");
      System.out.println("5 - Sair");
      System.out.print("\nSua opção: ");
      // lê a opção do usuário
      int opcao = Integer.parseInt(entrada.nextLine());
    
      // um menu switch para ler as opções do menu 
      switch(opcao){
        case 1: // vamos cadastrar um novo livro
          System.out.print("\nTítulo: ");
          String titulo = entrada.nextLine();
          System.out.print("Autor: ");
          String autor = entrada.nextLine();
          System.out.print("Quant Páginas: ");
          int quantPaginas = Integer.parseInt(entrada.nextLine());
          
          // vamos gerar o id deste livro
          int id = ++this.idUltimoLivroCadastrado;
        
          // agora vamos criar um novo objeto da classe Livro
          Livro livro = new Livro(id, titulo, autor, quantPaginas);
          // e o adicionamos no ArrayList de livros
          livros.add(livro);
        
          // e finalmente mostramos uma mensagem de sucesso.
          System.out.println("\nO livro foi cadastrado com sucesso");
        
          break;
        
        case 2: // vamos listar os livros cadastrados
          if(livros.isEmpty()){
            System.out.println("\nNão há nenhum livro cadastrado.");  
          }
          else{
            for(int i = 0; i < livros.size(); i++){
              temp = livros.get(i); // obtém o livro da iteração atual
              System.out.println("\nId: " + temp.getId());
              System.out.println("Título: " + temp.getTitulo());
              System.out.println("Autor: " + temp.getAutor());
              System.out.println("Quant. Paginas: " + temp.getPaginas());
            }  
          }
          break;  
          
        case 3: // vamos pesquisar um livro
          System.out.print("\nInforme o id ou título do livro: ");
          pesquisaLivro = entrada.nextLine();
          // chamamos o método que pesquisa o livro
          temp = this.pesquisarLivro(pesquisaLivro);
          if(temp == null){ // livro não encontrado
            System.out.println("\nO livro náo foi encontrado.");  
          }
          else{
            // mostra o livro encontrado
            System.out.println("\nId: " + temp.getId());
            System.out.println("Título: " + temp.getTitulo());
            System.out.println("Autor: " + temp.getAutor());
            System.out.println("Quant. Paginas: " + temp.getPaginas());
          }
          
          break;
        
        case 4: // vamos excluir um livro
          System.out.print("\nInforme o id ou título do livro a ser excluído: ");
          pesquisaLivro = entrada.nextLine();
          // chamamos o método que pesquisa o livro
          temp = pesquisarLivro(pesquisaLivro);
          if(temp == null){ // livro não encontrado
            System.out.println("\nO livro não foi encontrado.");  
          }
          else{
            // vamos excluir este livro
            livros.remove(temp);
            System.out.println("\nLivro excluído com sucesso.");
          }
          
          break;  
          
        case 5: // sai da aplicação
          System.out.println("\nObrigado por usar a biblioteca\n");
          System.exit(0);
          
        default:
          System.out.println("\nOpção inválida\n");
          break;
      }
    }
  }
  
  // método que pesquisa um livro pelo id ou e retorna um objeto da classe Livro
  public Livro pesquisarLivro(String pesquisaLivro){
    Livro livro = null;
    
    // este livro existe?
    for(int i = 0; i < livros.size(); i++){
      // pesquisa pelo id
      if(Integer.toString(livros.get(i).getId()).equals(pesquisaLivro)){
        return livros.get(i);  
      }
      // pesquisar por título
      else if(livros.get(i).getTitulo().contains(pesquisaLivro)){
        return livros.get(i);  
      }
    }
    
    return livro;
  }
}

E aqui está o código para a classe principal Estudos, no arquivo Estudos.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;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar um novo objeto da classe Biblioteca
    Biblioteca b = new Biblioteca("Biblioteca Programação e Artes");
    
    // mostra o menu da biblioteca
    b.exibirMenu();
  }
}



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

Exercícios Resolvidos de Java - Como retornar o código ASCII associado a um caractere em Java - Ler um caractere e retornar o código ASCII correspondente

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

Escreva um programa Java que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente.

Sua saída deverá ser parecida com:

Informe um caractere: A
Você informou o caractere: A
O código ASCII correspondente é: 65
Resposta/Solução:

Veja a resolução comentada deste exercício em 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 letra, símbolo ou pontuação
    System.out.print("Informe um caractere: ");
    
    // vamos ler o caractere informado
    char caractere = entrada.nextLine().charAt(0);
    
    // agora vamos obter o código ASCII correspondente
    int codigo = (int)caractere;
    
    // e mostramos o resultado
    System.out.println("Você informou o caractere: " + caractere);
    System.out.println("O código ASCII correspondente é: " + codigo);
  }
}

O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos.


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

Exercício Resolvido de Java - Como rotacionar os elementos de um vetor de inteiros n vezes para a direita - Solução usando força-bruta

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

Dado o vetor:

// vamos criar um vetor de inteiros
int valores[] = {1, 6, 9, 3, 7, 8, 5, 2};
Escreva um método Java que rotaciona este vetor para a direita um determinado número de casas. A função deverá receber o array e um inteiro indicando o número de rotações, ou seja, o número de vezes que os elementos do vetor serão movimentados para a direita.

Sua saída deverá ser parecida com:

Array na ordem original:
1 6 9 3 7 8 5 2 

Rotação do vetor depois do passo 1:
2 1 6 9 3 7 8 5 

Rotação do vetor depois do passo 2:
5 2 1 6 9 3 7 8 

Rotação do vetor depois do passo 3:
8 5 2 1 6 9 3 7 

Array depois de rotacionar 3 vezes:
8 5 2 1 6 9 3 7
Resposta/Solução:

Veja a resolução comentada deste exercício em 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;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar um vetor de inteiros
    int valores[] = {1, 6, 9, 3, 7, 8, 5, 2};
    
    // mostramos o array na ordem original
    System.out.println("Array na ordem original:");
    exibirVetor(valores);
    
    // vamos rotacionar o array 3 casas para a direita
    valores = rotacionarArray(valores, 3);
    
    // e mostramos o resultado
    System.out.println("Array depois de rotacionar 3 vezes:");
    exibirVetor(valores);
  }
  
  // método usado para exibir o array
  public static void exibirVetor(int []vetor){
    // percorremos cada elemento do vetor
    for (int i = 0; i < vetor.length; i++) {
      System.out.print(vetor[i] + " ");
    }
    System.out.println("\n");
  }
  
  // método que recebe um vetor de inteiros e o rotaciona um
  // determinado número de vezes
  public static int[] rotacionarArray(int[] vetor, int n) {
    // um laço externo que repete a mesma quantidade de n
    for (int i = 0; i < n; i++) {
      // começamos no último elemento e regredimos até
      // o segundo elemento do vetor
      for (int j = vetor.length - 1; j > 0; j--) {
        // avançamos um elemento de cada vez para
        // a direita
        int temp = vetor[j];
        vetor[j] = vetor[j - 1];
        vetor[j - 1] = temp;
      }  

      // mostramos o progresso
      System.out.println("Rotação do vetor depois do passo " + (i + 1) + ":");
      exibirVetor(vetor);
    }
    return vetor;
  }
}

A solução que apresentamos aqui usa a força-bruta, isto é, uma solução não otimizada e pouco recomendada para arrays com um número exagerado de elementos. Por ser força-bruta, o laço interno percorre todos os elementos do vetor, trocando-os de lugares. Em outras dicas do site nós colocamos versões melhoradas deste código.


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

Exercício Resolvido de Java - Escreva uma função Java que recebe três números inteiros e retorna o menor deles

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

Escreva um programa Java que contenha um método ou função que recebe três números inteiros e retorne o menor deles como um inteiro. Seu método não deve produzir nenhuma saída, apenas retornar o menor número entre os três argumentos fornecidos.

Sua saída deverá ser parecida com:

Informe o primeiro número: 8
Informe o segundo número: 10
Informe o terceiro número: 7
O menor número é: 7
Resposta/Solução:

Veja a resolução comentada deste exercício em 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 três
    // números 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());
    System.out.print("Informe o terceiro número: ");
    int n3 = Integer.parseInt(entrada.nextLine());
    
    // agora vamos calcular o menor número
    int menorNumero = menor(n1, n2, n3);
    
    // e mostramos o resultado
    System.out.println("O menor número é: " + menorNumero);
  }
  
  // método que recebe três números e retorna o menor deles
  public static int menor(int a, int b, int c){
    return Math.min(Math.min(a, b), c);
  }
}



Java ::: Classes e Componentes ::: JTable

Java Swing - Como excluir linhas de uma JTable em tempo de execução usando o método removeRow() da classe DefaultTableModel

Quantidade de visualizações: 15870 vezes
Nesta dica mostrarei como é possível excluir uma determinada linha de uma JTable usando o método removeRow() da classe DefaultTableModel. Veja que mostro também como inserir novas linhas na JTable usando o método insertRow().

Veja o resultado obtido na imagem abaixo:



E agora o código Java Swing completo:

----------------------------------------------------------------------
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 javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
 
public class Estudos extends JFrame{
  public Estudos(){
    super("Exemplo de uma tabela simples");
         
    final DefaultTableModel modelo = new DefaultTableModel();
     
    // constrói a tabela
    JTable tabela = new JTable(modelo);
     
    // Cria duas colunas
    modelo.addColumn("Nome");
    modelo.addColumn("Idade");
     
    JButton btn = new JButton("Inserir Linhas");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          String nome = JOptionPane.showInputDialog(null, "Informe o nome:");
          String idade = JOptionPane.showInputDialog(null, "Informe a idade:");
          int pos = Integer.parseInt(JOptionPane.showInputDialog(null, 
             "Informe a posição da nova linha:"));
           
          // testa se a posição é válida
          if(pos > (modelo.getRowCount() - 1))
            pos = 0;
           
          // Insere uma linha na posição especificada
          modelo.insertRow(pos, new Object[]{nome, idade});
        }
      } 
    );
     
    JButton btn2 = new JButton("Excluir Linhas");
    btn2.addActionListener(
      new ActionListener(){
        @Override
        public void actionPerformed(ActionEvent e){
          int pos = Integer.parseInt(JOptionPane.showInputDialog(null, 
            "Informe a posição da linha a ser excluída:"));
           
          // testa se a posição é válida
          if(pos < modelo.getRowCount())
            // Exclui a linha na posição especificada
            modelo.removeRow(pos);
        }
      } 
    );  
     
    tabela.setPreferredScrollableViewportSize(new Dimension(350, 50));
     
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
             
    JScrollPane scrollPane = new JScrollPane(tabela);
    c.add(scrollPane);
    c.add(btn);
    c.add(btn2);
         
    setSize(400, 300);
    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 ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição

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

Escreva um programa Java que leia e apresente um conjunto de números inteiros para uma matriz bidimensional 2 x 4 e apresente o valor e a posição do maior número inteiro. Você deverá informar tanto a linha quanto a coluna que o maior valor é encontrado.

Uma matriz bidimensional 2 x 4 quer dizer que a matriz possui 2 linhas e 4 colunas.

Seu programa Java deverá exibir uma saída parecida com:

Valor da linha 1 e coluna 1: 6
Valor da linha 1 e coluna 2: 9
Valor da linha 1 e coluna 3: 11
Valor da linha 1 e coluna 4: 5

Valor da linha 2 e coluna 1: 20
Valor da linha 2 e coluna 2: 63
Valor da linha 2 e coluna 3: 31
Valor da linha 2 e coluna 4: 7


Valores na matriz

    6    9   11    5
   20   63   31    7

O maior valor é 63
Ele foi encontrado na linha 2 e coluna 2
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) {
    // variaveis usdas na resolução do problema
    int matriz[][] = new int[2][4];
    int maior_valor, linha, coluna;
    
    // para ler a entrada do usuário
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler os valores e colocar na matriz
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.print("Valor da linha " + (i + 1) + " e coluna " 
          + (j + 1) + ": ");
        matriz[i][j] = Integer.parseInt(entrada.nextLine());       
      }        
      System.out.println();
    }
    
    // vamos mostrar a matriz da forma que ela foi informada
    System.out.println("\nValores na matriz\n");
      
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        System.out.printf("%5d", matriz[i][j]);   
      }
      
      // passa para a próxima linha da matriz
      System.out.println();       
    }
    
    // agora vamos localizar o maior valor na matriz
    linha = 0;
    coluna = 0;
    maior_valor = matriz[linha][coluna];
    for(int i = 0; i < matriz.length; i++){ // linhas
      for(int j = 0; j < matriz[0].length; j++){ // colunas
        if(matriz[i][j] > maior_valor){
          maior_valor = matriz[i][j];
          linha = i + 1;
          coluna = j + 1;
        }
      }
    }
    
    // vamos mostrar o resultado
    System.out.println("\nO maior valor é " + maior_valor);
    System.out.println("Ele foi encontrado na linha " + linha +
      " e coluna " + coluna);
  }
}



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

Curso de Java - Como usar a classe String da linguagem Java

Quantidade de visualizações: 7350 vezes
A classe String, presente no pacote java.lang, permite a representação de cadeias (strings) de caracteres. Todos os strings literais em Java, tais como "abc", são implementados como instâncias desta classe.

Por pertencer ao pacote java.lang, não precisamos importar nenhum pacote para poder usar esta classe em nossos programas Java. Veja um exemplo de como declarar e inicializar uma variável do tipo String:

----------------------------------------------------------------------
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 
----------------------------------------------------------------------

public class Main {
  public static void main(String[] args) {
    String nome = "Osmar J. Silva";
    System.out.println(nome);
  }
}

Veja a posição desta classe na hierarquia de classes da plataforma Java:

java.lang.Object
java.lang.String

Esta classe implementa as interfaces Serializable, CharSequence e Comparable<String>.

Objetos do tipo String são constantes, ou seja, seus valores não podem ser alterados depois de criados. Assim, se você tiver um código parecido com:

----------------------------------------------------------------------
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 
----------------------------------------------------------------------

public class Main {
  public static void main(String[] args) {
    // ambas as variáveis apontam para uma mesma string
    // há somente uma cópia de "Osmar J. Silva" na memória
    String nome = "Osmar J. Silva";
    String nome2 = "Osmar J. Silva";
	
    // agora uma nova string é criada e a anterior é preservada
    nome2 = "Marcos de Souza Gomes";
  }
}

Note que o compilador, com o propósito de poupar recursos do sistema, cria apenas uma string "Osmar J. Silva" e a coloca no pool de strings. No momento que alteramos o valor da variável nome2, uma nova string "Marcos de Souza Gomes" é criada e a anterior permanece intacta.

A classe String inclui métodos para examinar os caracteres individuais da sequencia, para a comparação de strings, pesquisar, extrair substrings e também criar uma cópia da string com todos os caracteres convertidos para letras maiúsculas ou minúsculas. O mapeamente das letras maiúsculas e minúsculas é feito com base na versão Unicode Standard especificada na classe Character.

A linguagem Java fornece suporte especial para a concatenação de strings, usando o operador (+) e para a conversão de outros objetos em strings. A concatenação é implementada por meio da classe StringBuilder (ou StringBuffer) e seu método append(). As conversões de strings são implementadas por meio do método toString(), definido na classe Object e herdado por todas as demais classes Java.

Quando não devidamente observado, passar um argumento null para o construtor ou método da classe String fará com que uma exceção do tipo NullPointerException seja atirado.

A classe String representa uma string no formato UTF-16, no qual caracteres suplementares são representados por pares prepostos. Valores de índice referem-se às unidades de código de caracteres. Assim, caracteres suplementares usam duas posições em uma String.


Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Máquinas de fluxo radial

Máquinas de fluxo radial, com fluxo predominantemente radial na região de trabalho da linha de lâmina móvel, podem ser exemplificadas por um ventilador ou bomba de fluxo radial (ou centrífuga), cujo escoamento se dá com o fluxo de saída ortogonal ao de entrada ao rotor.

Sobre as classificações de fluxo em máquinas hidráulicas, qual afirmativa está correta?

A) O fluxo axial ocorre em máquinas hidráulicas quando o fluido entra pelas pás do rotor em um sentido e sai no mesmo sentido, porém na direção contrária à de entrada.

B) O fluxo misto ocorre em máquinas hidráulicas quando o fluido entra pelas pás do rotor em um sentido e sai no mesmo sentido, porém na direção contrária à de entrada.

C) O fluxo misto em máquinas hidráulicas ocorre quando o fluido entra e sai no mesmo sentido, porém com ângulo próximo a 90° em relação à entrada.

D) Há um grupo que não se enquadra na categoria de fluxo radial. Esse grupo específico tem um escoamento do fluxo que entra em um sentido e sai perpendicularmente.

E) Há um grupo que não se enquadra na categoria de fluxo radial, tampouco na categoria axial. Esta categoria remanescente é conhecida como máquinas de fluxos misto.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Características do concreto armado

No campo da engenharia, a reologia desempenha um papel crucial no estudo do comportamento de materiais, especialmente quando submetidos a forças ou tensões. Ela investiga como os materiais reagem a essas forças e como suas propriedades podem variar de acordo com fatores como taxa de deformação, temperatura e pressão.

No contexto do concreto armado, um fenômeno reológico em particular ocorre quando a deformação do material aumenta com o tempo sob carregamento constante em comparação com a deformação inicial.

Como esse fenômeno é classificado na reologia do concreto armado?

A) Retração.

B) Expansão.

C) Fluência.

D) Variação de temperatura.

E) Deformações excessivas.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

valores = [4, 1, 8, 3, 7, 9]
for i in range(0, len(valores)):
  if i % 2 == 0:
    print("{0}  ".format(valores[i]), end="")

A) Erro NameError: name 'end' is not defined na linha 4

B) 4 1 8

C) Erro SyntaxError: invalid syntax na linha 3

D) 1 3 9

E) 4 8 7
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

A responsabilidade moral

Na relação moral e ética, pode-se perceber que, enquanto as inquietações com a esfera conceitual dos valores regentes do comportamento humano estão localizadas no âmbito da ética, as questões práticas desse campo pertencem à esfera da moral, que governa a alma de cada indivíduo. Portanto, diferenciar moral e ética significa dizer que:

A) moral é a aplicação da ética.

B) moral é a prática da ética em nossa sociedade.

C) não podemos diferenciar, pois são idênticas.

D) moral é o conjunto de valores, e ética é a reflexão dos mesmos.

E) moral e ética são antagônicas.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

A responsabilidade moral

A responsabilidade causal surge quando determinado evento ou estado causa outro. Por exemplo, um curto-circuito pode ser responsável por incêndio, um furacão por enchente e assim por diante. Na perspectiva de irmos para além da responsabilidade causal, pode-se dizer que a responsabilidade moral se refere:

A) ao fato de viver em sociedade.

B) às consequências das relações sociais.

C) às ações nas relações sociais somente.

D) ao convívio com outros humanos somente.

E) às ações e suas consequências nas relações sociais.
Verificar Resposta Estudar Cards Todas as Questões

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