Seguinte galera, desenvolvi um sistema de geração de notas/pedidos, onde é possivel cadastrar novos clientes e gerar a nota a partir das informações do cliente já cadastrado, deixando assim salvo no sistema, meu problema é que na hora de usar as informações de um determinado cliente, os dados a serem puxados sempre serão os do primeiro cliente cadastrado, não importa quantos clientes constem, gostaria de saber se alguém tem uma possível solução, desde já agradeço.
segue o código abaixo:
package sistemadenotas;
import java.util.ArrayList;
import java.util.InputMismatchException;
import java.util.Scanner;
public class SistemadeNotas {
public static void main(String[] args) {
int numero;
System.out.println("SISTEMA DE NOTAS");
System.out.println("1 - Criar um novo cadastro de clientes\n"
+ "2 - Criar uma nova nota\n"
+ "3 - Procurar clientes\n"
+ "4 - Sair");
System.out.println("Digite um número correspondente para continuar:");
ArrayList<String> cadastro = new ArrayList<>();
do {
numero = new Scanner(System.in).nextInt();
switch (numero) {
case 1:
// CRIAR UM NOVO CADASTRO DE CLIENTE
System.out.println("CADASTRO DE UM NOVO CLIENTE");
System.out.println("Pessoa Física ou Jurídica:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Nome:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Endereço:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Bairro:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Estado:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Município:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("País:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Número de celular:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Número de Telefone:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Email:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("CNPJ/CPF:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("Data de Nascimento:");
cadastro.add(new Scanner(System.in).nextLine());
System.out.println("CADASTRO FINALIZADO COM SUCESSO!");
System.out.println("Informe seu proximo número: ");
break;
case 2:
// CRIAR UMA NOVA NOTA PARA UM CLIENTE
try {
System.out.println("CRIAÇÃO DE UMA NOVA NOTA PARA UM CLIENTE");
System.out.println("Nome:");
String nome = new Scanner(System.in).nextLine();
System.out.println("Pessoa: " + cadastro.get(0));
System.out.println("Endereço: " + cadastro.get(2));
System.out.println("Bairro: " + cadastro.get(3));
System.out.println("Estado: " + cadastro.get(4));
System.out.println("Município: " + cadastro.get(5));
System.out.println("País: " + cadastro.get(6));
System.out.println("Número de celular: " + cadastro.get(7));
System.out.println("Número de Telefone: " + cadastro.get(8));
System.out.println("Email: " + cadastro.get(9));
System.out.println("CNPJ/CPF: " + cadastro.get(10));
System.out.println("Data de Nascimento: " + cadastro.get(11));
//} catch (IndexOutOfBoundsException erro) {
// System.out.println("Você primeiro precisa criar um cadastro de cliente para gerar uma nota: erro " + erro);
System.out.println("Informe a peça utilizada para o serviço:");
String peca = new Scanner(System.in).nextLine();
System.out.println("Informe o preço da peça utilizada para o serviço:");
double precoPeca = new Scanner(System.in).nextDouble();
System.out.println("Informe o serviço feito para o cliente:");
String servico = new Scanner(System.in).nextLine();
System.out.println("Informe o preço do serviço feito para o cliente:");
double servicoPreco = new Scanner(System.in).nextDouble();
double precoTotal = (precoPeca + servicoPreco);
System.out.println("Total: " + precoTotal);
System.out.println("Assinatura da empresa:");
String assinaturaEmpresa = new Scanner(System.in).nextLine();
System.out.println("Assinatura do cliente");
String assinaturaCliente = new Scanner(System.in).nextLine();
System.out.println("NOTA FINALIZADA COM SUCESSO!");
System.out.println("Informe seu proximo número: ");
} catch (IndexOutOfBoundsException erro) {
System.out.println("Você primeiro precisa criar um cadastro de cliente para gerar uma nota: erro " + erro);
System.out.println("Informe um número de 1 a 4:");
} catch (InputMismatchException erro) {
System.out.println("Esse texto não pode ser impresso nesta coluna: " + erro);
}
break;
case 3:
// PROCURAR CLIENTES CADASTRADOS
System.out.println("PROCURAR CLIENTES CADASTRADOS");
System.out.println(cadastro.toString());
break;
case 4:
System.out.println("Finalizando sistema...");
break;
default:
System.out.println("Esse número não é valido, por favor digite novamente um número entre 1 e 4");
break;
}
} while (numero != 4);
}
}