Tenho duvidas de inserção do tratamento de exceções…
a onde eu crio o bloco?
em todos os metodos?
Qual a melhor forma de trabalhar com datas…meu professor so usa String para nao complicar a turma.
PODERIA CRIAR UM LOOP DENTRO DO BLOCO DE EXCEÇÃO…
EXEMPLO: UM DADO INTEIRO…O USUARIO DIGITA UMA LETRA, VOLTAR PARA A LEITURA ATE QUE SE DIGITE UM INTEIRO.
package dominio;
public class Estrela {
private String nome;
private long distancia;
private String sistema;
private String quemDescobriu;
private String dataDescoberta;
public Estrela() {
}
public Estrela(String nome, long distancia, String <a href='#' onClick="hwClick7912510272760(-1861483689);return false;" style='cursor: hand; color:#006600; text-decoration:underline; border-bottom:dotted 1px;' onmouseover="hw7912510272760(event, this, '-1861483689'); this.style.cursor='hand'; this.style.textDecoration='underline'; this.style.borderBottom='solid';" onmouseout="hideMaybe(event, this); this.style.cursor='hand'; this.style.textDecoration='underline'; this.style.borderBottom='dotted 1px'; " oncontextmenu="return false;">sistema</a>,
String quemDescobriu, String dataDescoberta) {
this.nome = nome;
this.distancia = distancia;
this.sistema = sistema;
this.quemDescobriu = quemDescobriu;
this.dataDescoberta = dataDescoberta;
}
public String getNome() {
return nome;
}
public long getDistancia() {
return distancia;
}
public String getSistema() {
return sistema;
}
public String getQuemDescobriu() {
return quemDescobriu;
}
public String getDataDescoberta() {
return dataDescoberta;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setDistancia(long distancia) {
this.distancia = distancia;
}
public void setSistema(String sistema) {
this.sistema = sistema;
}
public void setQuemDescobriu(String quemDescobriu) {
this.quemDescobriu = quemDescobriu;
}
public void setDataDescoberta(String dataDescoberta) {
this.dataDescoberta = dataDescoberta;
}
}
package controle;
import java.util.HashMap;
import java.util.Scanner;
import dominio.Estrela;
public class CadastroEstrela {
private static HashMap<String, Estrela> mapeamentoEstrela = new HashMap<String, Estrela>();
private static Scanner teclado = new Scanner(System.in);
private static String linha = "\n\n--------------------------------------";
private static String tema = "CADASTRO DE ESTRELA";
public static void main(String args[]) {
while (true) {
System.out.println(linha);
System.out.println("MENU " + tema);
System.out.println("1 - Cadastrar");
System.out.println("2 - Consultar");
System.out.println("3 - Alterar");
System.out.println("4 - Excluir");
System.out.println("5 - Imprimir Todas as Estrelas");
System.out.println("6 - Sair");
String opcao = teclado.next();
int op = Integer.parseInt(opcao);
if (op == 1)
cadastrar();
else if (op == 2)
consultar();
else if (op == 3)
alterar();
else if (op == 4)
excluir();
else if (op == 5)
print();
else if (op == 6)
break;
else
System.out.println("Opção inválida!");
}
}
private static void print() {
for (Estrela e : mapeamentoEstrela.values()) {
System.out.println(linha);
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
}
}
public static void cadastrar() {
System.out.println(linha);
System.out.println(tema);
Estrela e = new Estrela();
lerDados(e);
mapeamentoEstrela.put(e.getNome(), e);
}
public static void lerDados(Estrela e) {
System.out.println("Digite o nome da Estrela");
e.setNome(teclado.next());
System.out.println("Digite sua Distancia");
e.setDistancia(teclado.nextLong());
System.out.println("Digite o Sistema em que se encontra:");
e.setSistema(teclado.next());
System.out.println("Digite o Nome do Astronomo que Descobriu:");
e.setQuemDescobriu(teclado.next());
System.out.println("Digite a data do descobrimento");
e.setDataDescoberta(teclado.next());
}
public static Estrela consultar() {
System.out.println(linha);
System.out.println(tema + " - Tela de CONSULTA");
System.out.println("Informe o Nome para a consulta: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e != null) {
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
} else
System.out.println("Estrela Nao encontrada");
return null;
}
public static void excluir() {
System.out.println(linha);
System.out.println(tema + " - Tela de EXCLUSÃO");
System.out.println("Informe o Nome para a consulta e possivel exclusão: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e == null) {
System.out.println("Estrela Nao encontrada");
} else
mapeamentoEstrela.remove(e);
}
public static void alterar() {
System.out.println(linha);
System.out.println(tema + " - Tela de ALTERAÇÃO");
System.out.println("Informe o Nome para a consulta e possivel alteração: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e == null) {
System.out.println("Estrela Nao encontrada");
} else
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
System.out.println();
lerDados(e);
// mapeamentoEstrela.put(e.getNome(), e);
}
}
PODERIA CRIAR UM LOOP DENTRO DO BLOCO DE EXCEÇÃO…
EXEMPLO: UM DADO INTEIRO…O USUARIO DIGITA UMA LETRA, VOLTAR PARA A LEITURA ATE QUE SE DIGITE UM INTEIRO.
Segue as Classes
package dominio;
public class Estrela {
private String nome;
private long distancia;
private String sistema;
private String quemDescobriu;
private String dataDescoberta;
public Estrela() {
}
public Estrela(String nome, long distancia, String sistema,
String quemDescobriu, String dataDescoberta) {
this.nome = nome;
this.distancia = distancia;
this.sistema = sistema;
this.quemDescobriu = quemDescobriu;
this.dataDescoberta = dataDescoberta;
}
public String getNome() {
return nome;
}
public long getDistancia() {
return distancia;
}
public String getSistema() {
return sistema;
}
public String getQuemDescobriu() {
return quemDescobriu;
}
public String getDataDescoberta() {
return dataDescoberta;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setDistancia(long distancia) {
this.distancia = distancia;
}
public void setSistema(String sistema) {
this.sistema = sistema;
}
public void setQuemDescobriu(String quemDescobriu) {
this.quemDescobriu = quemDescobriu;
}
public void setDataDescoberta(String dataDescoberta) {
this.dataDescoberta = dataDescoberta;
}
}
package controle;
import java.util.HashMap;
import java.util.Scanner;
import dominio.Estrela;
public class CadastroEstrela {
private static HashMap<String, Estrela> mapeamentoEstrela = new HashMap<String, Estrela>();
private static Scanner teclado = new Scanner(System.in);
private static String linha = "\n\n--------------------------------------";
private static String tema = "CADASTRO DE ESTRELA";
public static void main(String args[]) {
while (true) {
System.out.println(linha);
System.out.println("MENU " + tema);
System.out.println("1 - Cadastrar");
System.out.println("2 - Consultar");
System.out.println("3 - Alterar");
System.out.println("4 - Excluir");
System.out.println("5 - Imprimir Todas as Estrelas");
System.out.println("6 - Sair");
String opcao = teclado.next();
int op = Integer.parseInt(opcao);
if (op == 1)
cadastrar();
else if (op == 2)
consultar();
else if (op == 3)
alterar();
else if (op == 4)
excluir();
else if (op == 5)
print();
else if (op == 6)
break;
else
System.out.println("Opção inválida!");
}
}
private static void print() {
for (Estrela e : mapeamentoEstrela.values()) {
System.out.println(linha);
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
}
}
public static void cadastrar() {
System.out.println(linha);
System.out.println(tema);
Estrela e = new Estrela();
lerDados(e);
mapeamentoEstrela.put(e.getNome(), e);
}
public static void lerDados(Estrela e) {
System.out.println("Digite o nome da Estrela");
e.setNome(teclado.next());
System.out.println("Digite sua Distancia");
e.setDistancia(teclado.nextLong());
System.out.println("Digite o Sistema em que se encontra:");
e.setSistema(teclado.next());
System.out.println("Digite o Nome do Astronomo que Descobriu:");
e.setQuemDescobriu(teclado.next());
System.out.println("Digite a data do descobrimento");
e.setDataDescoberta(teclado.next());
}
public static Estrela consultar() {
System.out.println(linha);
System.out.println(tema + " - Tela de CONSULTA");
System.out.println("Informe o Nome para a consulta: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e != null) {
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
} else
System.out.println("Estrela Nao encontrada");
return null;
}
public static void excluir() {
System.out.println(linha);
System.out.println(tema + " - Tela de EXCLUSÃO");
System.out.println("Informe o Nome para a consulta e possivel exclusão: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e == null) {
System.out.println("Estrela Nao encontrada");
} else
mapeamentoEstrela.remove(e);
}
public static void alterar() {
System.out.println(linha);
System.out.println(tema + " - Tela de ALTERAÇÃO");
System.out.println("Informe o Nome para a consulta e possivel alteração: ");
String nome = teclado.next();
Estrela e = (Estrela) mapeamentoEstrela.get(nome);
if (e == null) {
System.out.println("Estrela Nao encontrada");
} else
System.out.println("nome: " + e.getNome());
System.out.println("Distancia: " + e.getDistancia());
System.out.println("Sistema: " + e.getSistema());
System.out.println("Astronomo: " + e.getQuemDescobriu());
System.out.println("Data da Descoberta: " + e.getDataDescoberta());
System.out.println();
lerDados(e);
// mapeamentoEstrela.put(e.getNome(), e);
}
}
vc não deve ter visto o que escrevi.