Boa noite!! Galera gostaria de um força para resolver esse projeto.
a) Uma classe: ContaCorrente:
? Atributos da classe ContaCorrente:
? numeroConta (inteiro)não pode receber um valor menor ou igual a zero;
? correntista (string) não pode receber um valor nulo ou string vazia;
? saldo (ponto-flutuante) não pode manter um valor menor que zero;
? Implementar apenas um construtor recebendo valores para os atributos numeroConta e correntista da classe ContaCorrente.
? Utilizar a técnica de encapsulamento apresentada no curso e implementar métodos get e set para todos os atributos da classe (ver observação abaixo). OBS: Não implementar o método set para o atributo saldo. O valor do atributo saldo só poderá ser alterado através dos métodos deposita, saque e transfere detalhados a seguir.
? Implementar o método boolean deposita(double valor) que deposita um valor na conta corrente. O método retorna verdadeiro se o depósito foi realizado com sucesso ou falso em caso contrário. OBS: Verificar se o valor informado é maior que zero.
? Implementar o método boolean saque(double valor) que realiza um saque na conta corrente. O método retorna verdadeiro se o saque foi realizado com sucesso ou falso e caso contrário. OBS: Verificar se o valor informado é maior que zero e se há saldo suficiente para realizar o saque.
? Implementar o método boolean transfere(double valor, ContaCorrente c2) que realiza uma transferência de um valor da conta corrente para a conta corrente c2. O método retorna verdadeiro se a transferência foi realizada com sucesso ou falso em caso contrário. OBS: Verificar se o valor informado é maior que zero, se o objeto c2 não é nulo e se há saldo suficiente para realizar a transferência.
----------------------------Segue abaixo o código da primeira parte que fiz Classe ContaCorrente --------------------------------------------------------------------------------
public class ContaCorrente {
int numeroConta;
String correntista;
float saldo;
public ContaCorrente(String correntista, int numeroConta, float saldo) {
this.correntista = correntista;
this.numeroConta = numeroConta;
this.saldo = saldo;
}
public ContaCorrente(int num, String nome) {
// TODO Auto-generated constructor stub
}
public int getNumeroConta() {
return numeroConta;
}
public void setNumeroConta(int numeroConta) {
this.numeroConta = numeroConta;
}
public String getCorrentista() {
return correntista;
}
public void setCorrentista(String correntista) {
this.correntista = correntista;
}
public float getSaldo() {
return saldo;
}
// public void setSaldo(float saldo) {
// this.saldo = saldo;
// }
boolean deposita(double valor){
if (valor > 0){
this.saldo = (float)(this.saldo + valor);
return true;
} else{
return false;
}
}
boolean saque (double valor){
if (valor > 0){
this.saldo = (float) (this.saldo - valor);
return true;
} else {
return false;
}
}
boolean transfere (double valor, ContaCorrente c2){
if (valor > 0){
boolean retirou = this.saque(valor);
if (retirou == false){
return false;
}
}
else{
if(c2!= null){
c2.deposita(valor);
return true;
}
else{
System.err.println("Valor de Conta Corrente 2 nulo!");
return false;
}
}
return false;
}
}
Não sei se tem algo errado nesse parte que não esta retornando o valor na segunda parte.
[size=18]
O PROBLEMA ESTA AQUI!![/size]
QUANDO FAÇO O ARRAY PARA GUARDA OS VALORES PASSADO PELO O USUÁRIO CONFORME PEDE ABAIXO NÃO CONSIGO
TENTO IMPRIMIR OS DADOS DA CONTA PASSADO PELO USUÁRIO E NÃO SAI.
NÃO ESTOU CONSEGUINDO CRIAR OS RESTO DESSE BENDITO PROJETO
b) Uma classe: AplicacaoContas:
1. Esta classe instancia dois objetos do tipo ContaCorrente, a partir de dados informados pelo usuário.
2. Em seguida, o programa deve oferecer um menu para o usuário com as seguintes opções:
? Imprimir dados de uma conta: Para esta opção o usuário deverá informar o número da conta;
? Realizar depósito: Para esta opção o usuário deverá informar o número da conta e o valor para depósito;
? Realizar saque: Para esta opção o usuário deverá informar o número da conta e o valor para saque;
? Realizar transferência: Para esta opção o usuário deverá informar o número da conta origem, o número da conta destino e o valor para transferência;
OBS: Para as opções de depósito, saque e transferência, o programa deve imprimir na tela uma mensagem indicando se o depósito, o saque ou a transferência foi realizado com sucesso ou não.
------------------------------- Segue abaixo que começei a fazer tenho certeza que tem algo errado -----------------------------------------------------------------------
[size=24]Por Favor Ajude-me!![/size]
import java.util.ArrayList;
import java.util.Scanner;
import java.util.Set;
import javax.swing.JOptionPane;
public class AplicacaoConta {
static int op;
static Scanner entrada = new Scanner(System.in);
static ArrayList <ContaCorrente> ContasCorrentes = new ArrayList <ContaCorrente>();
public static void CadastroConta(){
System.out.print("\n\t\tInforme Nome Correntista: ");
String correntista = entrada.next();
System.out.print("\t\tInforme Número da Conta: ");
int numeroConta=entrada.nextInt();
ContasCorrentes.add(new ContaCorrente(numeroConta, correntista));
System.out.println("\n\t\tOperação Realizada com Sucesso!");
}
private static void menu() {
String menu = "\n\t\t1 - Imprimir dados de uma conta\n\t\t2 - Realizar depósito\n\t\t3 - Realizar saque\n\t\t4 - Realizar transferência\n\n";
System.out.println(menu);
System.out.print("\n\t\tEntre com a opcao: ");
int opcao = entrada.nextInt();
switch (opcao) {
case 1:
System.out.println("\n\t\t============== CONTAS CORRENTES CADASTRADAS ============");
System.out.print("\n\t\tEntre com o numero da sua conta: ");
int numeroConta = entrada.nextInt();
for(ContaCorrente c : ContasCorrentes) {
if (numeroConta == c.numeroConta)
System.out.println("\n\t\tNovo Correntista: " + c.correntista);
else {System.out.println("\n\t\tNúmero Inválido!");
}
break;
}
}
// default:System.out.println("\t\tOperacao invalida!");
}
public static void main(String[] args){
CadastroConta ();
menu();
}
}


:x