package tabalho;
import java.io.IOException;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
-
@author yurib
*/
public class Tabalho {private static String nome;
private static int idade;
private static float altura;
private static float peso;
private static char sexo;
public static void main(String[] args) {
Scanner leitura = new Scanner(System.in);
do{
System.out.println("Digite seu nome: ");
nome = leitura.nextLine();
}while(nome.length() < 6 || nome.length() > 30);
do{
System.out.println("Digite sua idade: ");
idade = leitura.nextInt();
}while(idade <= 0 || idade >= 100);
do{
System.out.println("Digite sua altura: ");
altura = leitura.nextFloat();
}while(altura <= 0);
do{
System.out.println("Digite seu peso: ");
peso = leitura.nextFloat();
}while(peso <= 0);
do{
try {
System.out.println("Digite seu sexo: F ou M");
sexo = (char) System.in.read();
} catch (IOException ex) {
Logger.getLogger(JavaFicha.class.getName()).log(Level.SEVERE, null, ex);
}
}while(sexo != 'F' && sexo != 'M');
System.out.println("\nNome: " + nome);
System.out.println("Idade: " + idade);
System.out.println("Altura: " + altura);
System.out.println("Peso: " + peso);
System.out.println("Sexo: " + sexo);
}
}
EU queria criar uma lista. Só que tipo em numeração 1,2, 3
1= Ficha
2= imprimir
3- Resetar
Estou a tarde toda tentado fazer isto. Quem puder me ajudar ficarei grato!
Não entendi muito bem a pergunta, poderia me dar mais informações?
Queria criar uma lista no meu código.
Só que eu não consigo criar uma lista.
Queria criar uma lista que tivesse a opção sair
Creio que a lista você possa criar usando um System.out.println e concatenando as opções com os devidos os espaços. Nessa lista você pode colocar as opções como por exemplo:
1 - Cadastro
2 - Deletar
3 - Sair
e aplicar a lógica da lista dentro de um While
Por qual motivo o seu Scanner é uma variável local e suas variáveis nome, idade, peso, altura e sexo são atributos estáticos?
Eu faria assim:
import static java.lang.System.out;
import java.util.Scanner;
public class Trabalho {
private static final Scanner in = new Scanner(System.in);
public static void main(String[] args) {
Trabalho tabalho = new Trabalho();
tabalho.executar();
}
private String nome;
private int idade;
private double altura;
private double peso;
private char sexo;
public void executar() {
int opcao;
do {
opcao = lerOpcaoMenu();
switch (opcao) {
case 1:
ficha();
break;
case 2:
imprimir();
break;
case 3:
resetar();
break;
}
} while (opcao != 4);
}
private void resetar() {
nome = null;
idade = 0;
altura = 0;
peso = 0;
sexo = 0;
}
private void imprimir() {
out.println("Nome: " + nome);
out.println("Idade: " + idade);
out.println("Altura: " + altura);
out.println("Peso: " + peso);
out.println("Sexo: " + sexo);
}
private void ficha() {
nome = lerString("Digite seu nome: ");
idade = lerInt("Digite sua idade: ");
altura = lerDouble("Digite sua altura: ");
peso = lerDouble("Digite seu peso: ");
sexo = lerChar("Digite seu sexo: F ou M");
}
private int lerOpcaoMenu() {
String menu = "Escolha uma opção:\n"
+ " 1 - Ficha\n"
+ " 2 - Imprimir\n"
+ " 3 - Resetar\n"
+ " 4 - Sair";
int opcao = lerInt(menu);
return opcao;
}
private char lerChar(String mensagem) {
char caractere;
do {
out.println(mensagem);
caractere = in.nextLine().charAt(0);
} while (caractere != 'F' && caractere != 'M');
return caractere;
}
private double lerDouble(String mensagem) {
double numero;
do {
out.println(mensagem);
numero = Double.parseDouble(in.nextLine());
} while (numero <= 0);
return numero;
}
private int lerInt(String mensagem) {
int numero;
do {
out.println(mensagem);
numero = Integer.parseInt(in.nextLine());
} while (numero <= 0 || numero >= 100);
return numero;
}
private String lerString(String mensagem) {
String texto;
do {
out.println(mensagem);
texto = in.nextLine();
} while (texto.length() < 6 || texto.length() > 30);
return texto;
}
}
1 curtida