Fala galera beleza ?
Então, sou iniciante em desenvolvimento java e minha primeiro dúvida cruel que bati de frente em uma questão no curso foi a seguinte.
"Faça o cadastro dos dados de uma conta corrente ou uma conta poupança. Peça ao usuário para digitar cada informação solicitada. Apos inserir os dados, imprima o valor de cada atributo da classe instanciada.
Crie também os métodos Sacar, Depositar, Imprimir dados, Aplicar Rendimento.
Atributos:
Conta Corrente tem: Agencia, Nr_conta, Saldo, Nome do Titular, Limite;
Poupança: Agencia, Nr_conta, Saldo, Nome do Titular,rendimento;
Crie uma classe Principal com Void Main(),
Faça um menu para:
Menu
1 - Cadastrar Conta Corrente
2 - Cadastrar Poupança
3 - Saque de Conta Corrente
4 - Saque de Poupança
5 - Depósito em Conta Corrente
6 - Depósito em Poupança
7 - Saldo de Conta Corrente
8 - Saldo de Poupança
9 - Aplicação de Rendimentos na Poupança
10- para sair
Faça o diagrama de classe e o programa.
Deixe os atributos das classes como private, crie os metodos gets e sets.
Faça os demais métodos, conforme o menu."
Até ai tudo bem, fiz tudo corretamente, e o prof já corrigiu, depois ele me pediu o seguinte.
"Faça a questão acima e armazene cada objeto em um vetor.
Dica: como temos um vetor que é um conjunto de objetos, antes de realizar qualquer operação você deverá localizar, para assim realizar a tarefa. Crie também uma variável para controlar o índice, do último objeto armazenado.
Faça também o método informar a quantidade de conta corrente ou poupança cadastrados.
Limite o vetor a 20 posição para cada tipo de objeto."
package aula_21desafio;
import java.util.Scanner;
public class Programa {
public static void main(String[] args) {
Scanner read = new Scanner(System.in);
int opt;
ContaCorrente[] cc = new ContaCorrente[20];
ContaPoupança[] cp = new ContaPoupança[20];
do {
System.out.println("\tMenu\n");
System.out.println("Escolha abaixo qual opção desejada:\n");
System.out.println("1 - Cadastrar Conta Corrente");
System.out.println("2 - Cadastrar Conta Poupança");
System.out.println("3 - Sacar Conta Poupança");
System.out.println("4 - Sacar Conta Corrente");
System.out.println("5 - Depósito Conta Poupança");
System.out.println("6 - Depósito Conta Corrente");
System.out.println("7 - Saldo Conta Poupança");
System.out.println("8 - Saldo Conta Corrente");
System.out.println("9 - Aplicação de Rendimentos na Poupança");
System.out.println("10 - Sair");
System.out.print("Opção: ");
opt = Integer.parseInt(read.nextLine());
switch (opt) {
case 1:
System.out.println("Você escolheu conta corrente");
System.out.println("Qual o seu nome? ");
String nomeDoTitular = read.nextLine().trim();
System.out.println("Digite o número da agência: ");
String agencia = read.nextLine();
System.out.println("Digite o número da conta: ");
String numeroDaConta = read.nextLine();
System.out.println("Qual o limite desejado? ");
double limite = Double.parseDouble(read.nextLine().replace(",", "."));
System.out.println("Digite um valor inicial a ser depositado: ");
double saldo = Double.parseDouble(read.nextLine().replace(",", "."));
int i = 0;
cc[i]= new ContaCorrente(nomeDoTitular, agencia, numeroDaConta, limite, saldo);
cc[i].exibirInfos();
i++;
break;
Fazendo dessa maneira estou recebendo um NullPointerException ao tentar acessar qualquer indice que nao seja o 0.