Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Um programa Java que solicita ao usuário que informe sua idade em anos, meses e dias e mostre sua idade em dias - Lista de Exercícios Resolvidos de Java

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

Escreva um programa Java que solicite ao usuário que informe sua idade em anos, meses e dias, ou seja, sua idade atual em anos e a quantidade de meses e dias decorridos desde seu aniversário. Seu programa deverá exibir uma saída parecida com:

Informe sua idade em anos, meses e dias
Anos: 25
Meses: 2
Dias: 12
Idade expressa em dias: 9197
Aqui o usuário tem 25 anos, 2 meses e 12 dias de idade. Assim, sua idade expressa em dias é 9.197.

Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner):

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

public static void main(String[] args){
  // não se esqueça de adicionar um import para a classe Scanner
  // import java.util.Scanner;

  // vamos criar um objeto da classe Scanner
  Scanner entrada = new Scanner(System.in);

  // variáveis que vão guardar a idade em anos, meses e dias;
  int anos, meses, dias;
  int idade_dias; // guardará a idade em dias

  System.out.println("Informe sua idade em anos, meses e dias");

  // obtém os anos
  System.out.print("Anos: ");
  anos = Integer.parseInt(entrada.nextLine());

  // obtém os meses
  System.out.print("Meses: ");
  meses = Integer.parseInt(entrada.nextLine());

  // obtém os dias
  System.out.print("Dias: ");
  dias = Integer.parseInt(entrada.nextLine());

  // vamos calcular a idade em dias
  idade_dias = (anos * 365) + (meses * 30) + dias;

  // vamos exibir o resultado
  System.out.println("Idade expressa em dias: " + idade_dias);
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Classes e Componentes ::: JTextArea

Java Swing - Como detectar alterações no conteúdo de um JTextArea

Quantidade de visualizações: 8989 vezes
Nesta dica veremos como é possível escrever uma aplicação Java Swing que detecta quando o conteúdo de um controle JTextArea é alterado. Para isso nós vamos fazer a janela JFrame implementar a interface DocumentListener e fornecer comportamento para seus método insertUpdate(), removeUpdate() e changedUpdate().

O resultado do código é refletido na imagem abaixo:



E agora o código Java Swing completo para o exemplo:

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

package arquivodecodigos;

import javax.swing.*;
import java.awt.*;
import javax.swing.event.*;
 
public class Estudos extends JFrame implements DocumentListener{
  JTextArea textArea;
  JLabel aviso;
 
  public Estudos() {
    super("Detectando alterações em um JTextArea");
    Container c = getContentPane();
    FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
    c.setLayout(layout);
     
    textArea = new JTextArea(10, 20);
    textArea.setLineWrap(true);
    textArea.getDocument().addDocumentListener(this);
     
    aviso = new JLabel("Aviso de alterações");   
        
    c.add(textArea);
    c.add(aviso);
     
    setSize(350, 250);
    setVisible(true);
  }
   
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
   
  public void insertUpdate(DocumentEvent e) {
    aviso.setText("Aviso de Inserção: " + e.toString());
  }
 
  public void removeUpdate(DocumentEvent e) {
    aviso.setText("Aviso de Remoção: " + e.toString());
  }
 
  public void changedUpdate(DocumentEvent e) {
    // pode obter os dois anteriores aqui
    // aviso.setText("Aviso de Alteração: " + e.toString());
  }
}



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

Como usar a classe LinkedList do Java em suas aplicações

Quantidade de visualizações: 26953 vezes
A classe LinkedList é uma implementação da interface List. Esta classe implementa boa parte das operações de uma lista e permite a inserção de qualquer tipo de elemento (incluindo null).

Veja sua posição na hierarquia de classes Java:

java.lang.Object
  java.util.AbstractCollection<E>
    java.util.AbstractList<E>
      java.util.AbstractSequentialList<E>
        java.util.LinkedList<E>


Esta classe implementa as seguintes interfaces: Serializable, Cloneable, Iterable<E>, Collection<E>, Deque<E>, List<E> e Queue<E>.

O uso mais comum de uma lista ligada é quando precisamos adicionar e remover elementos no início ou final da lista, acessar os elementos no início ou final e percorrer a lista elemento por elemento. Não é raro ver programadores usando a classe LinkedList como uma pilha ou fila.

O trecho de código abaixo mostra como criar uma LinkedList, adicionar elementos e percorrê-los usando um ListIterator:

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

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
    // Cria uma LinkedList de String
    LinkedList<String> lista = new LinkedList<String>();
    
    // adiciona três elementos na lista
    lista.add("Cuiabá");
    lista.add("Goiânia");
    lista.add("Belo Horizonte");

    // obtém um ListIterator para percorrer toda a
    // lista, começando no primeiro elemento
    ListIterator<String> iterador = lista.listIterator(0);
    while(iterador.hasNext()){  
      String cidade = iterador.next(); 
      System.out.println(cidade); 
    }
  } 
}

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

Cuiabá
Goiânia
Belo Horizonte


Java ::: Dicas & Truques ::: Programação Orientada a Objetos

Como usar encapsulamento em Java - Programação Orientada a Objetos em Java

Quantidade de visualizações: 37844 vezes
Encapsulamento é a técnica de transformar os objetos que compõem uma aplicação em verdadeiras caixas-pretas. De fato, se pensarmos em termos de informática, é possível para um usuário comum usar todas as funcionalidades de uma impressora sem nem mesmo entender seu funcionamento interno. Imagine o desastre que seria se todos os usuários resolvessem abrir suas impressoras para investigar o que há dentro delas.

Da mesma forma, ao construir uma classe, devemos fazê-lo de forma que o usuário desta classe tenha acesso apenas aos métodos que permitem ler informações da classe ou fornecer os dados necessários para sua correta operação. Dados relativos ao funcionamento interno da classe devem permanecer ocultos e acessíveis somente aos métodos da própria classe.

O encapsulamento deve ser aplicado de forma a permitir que alterações na estrutura interna de uma classe não prejudique o funcionamento do código externo que a usa. Veja um exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
 
  class Pedido{
    public List obterProdutos(){
      // monta uma lista de produtos
      // pertecentes a este pedido
      return lista;
    }
  }

A classe Pedido contém um método chamado obterProdutos() que retorna uma lista de produtos pertencentes a um determinado pedido. É aqui que o encapsulamento se torna importante. O código que usa esta classe desconhece completamente como esta lista de produtos é montada. Tudo que nos interessa é a lista de produtos que o método retorna. O programador da classe pode decidir a qualquer momento, talvez para melhorar o desempenho da classe, alterar a forma de montagem da lista. Uma vez que o nome e retorno do método (incluindo a estrutura da lista retornada) continuem sendo os mesmos, o código que usa a classe continuará funcionando como anteriormente.


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: Delphi
6º lugar: C
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á 19 usuários muito felizes estudando em nosso site.