Domanda Problema con array di oggetti

Stato
Discussione chiusa ad ulteriori risposte.

PandorumTeam

Utente Electrum
26 Giugno 2011
204
30
24
126
Ultima modifica:
Ciao a tutti, ho un problema con un programma in pratica dovrei registrare le operazioni di (prelievo, somma e lettura del saldo) in una terza classe.
Nella prima ho messo il menu per interagire con l'app.
Nella seconda classe ho inserito i metodi.
E nella terza che non ho creato deve esserci un costruttore che restituisce il tipo dell'operazione che si è eseguita in conto.
La classe conto deve avere i seguenti attributi:

saldo
Operazione [] operazioni (array di oggetti)
numop (numero operazioni corrente)

Quello che proprio non riesco a fare e salvare in questo array di oggetti che poi deve comunicare con la classe 3 "operazioni" tramite un costruttore, il tipo di operazione che si sta effettuando.
numop restituisce il numero dell'operazione corrente.
Vi allego qui il mio codice:


Codice:
[FONT=Verdana]import java.io.BufferedReader;[/FONT]
[FONT=Verdana]import java.io.IOException;[/FONT]
[FONT=Verdana]import java.io.InputStreamReader;[/FONT]

[FONT=Verdana]public class GestioneConto[/FONT]
[FONT=Verdana]{[/FONT]
[FONT=Verdana]    public static void main(String[] args)[/FONT]
[FONT=Verdana]    {[/FONT]
[FONT=Verdana]        int scelta = -1;[/FONT]
[FONT=Verdana]        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));[/FONT]
[FONT=Verdana]        Conto conto = new Conto();[/FONT]

[FONT=Verdana]        do[/FONT]
[FONT=Verdana]        {[/FONT]
[FONT=Verdana]            System.out.println("Benvenuto nel menu");[/FONT]
[FONT=Verdana]            System.out.println("1. Effettua un versamento");[/FONT]
[FONT=Verdana]            System.out.println("2. Effettua un prelievo");[/FONT]
[FONT=Verdana]            System.out.println("3. Visualizza il saldo");[/FONT]
[FONT=Verdana]            System.out.println("4. Visualizza operazioni effettuate");[/FONT]
[FONT=Verdana]            System.out.println("5. Esci");[/FONT]
[FONT=Verdana] //eccezioni[/FONT]
[FONT=Verdana]            try[/FONT]
[FONT=Verdana]            {[/FONT]
[FONT=Verdana]                scelta = Integer.parseInt(bufferedReader.readLine());[/FONT]
[FONT=Verdana]            } catch (IOException e) {[/FONT]
[FONT=Verdana]                System.err.println("Inserisci un numero valido.");[/FONT]
[FONT=Verdana]            } catch (NumberFormatException e) {[/FONT]
[FONT=Verdana]                System.err.println("Inserisci un numero valido.");[/FONT]
[FONT=Verdana]            }[/FONT]


[FONT=Verdana]            switch (scelta)[/FONT]
[FONT=Verdana]            {[/FONT]
[FONT=Verdana]                case 1:[/FONT]
[FONT=Verdana]                    conto.versamento();[/FONT]
[FONT=Verdana]                    break;[/FONT]
[FONT=Verdana]                case 2:[/FONT]
[FONT=Verdana]                    conto.prelievo();[/FONT]
[FONT=Verdana]                    break;[/FONT]
[FONT=Verdana]                case 3:[/FONT]
[FONT=Verdana]                    conto.getsaldo();[/FONT]
[FONT=Verdana]                    break;[/FONT]
[FONT=Verdana]                case 4:[/FONT]
[FONT=Verdana]                    conto.visualizza();[/FONT]
[FONT=Verdana]                    break;[/FONT]
[FONT=Verdana]                case 5:[/FONT]
[FONT=Verdana]                   break;[/FONT]

[FONT=Verdana]                default:[/FONT]
[FONT=Verdana]                    System.err.println("Scelta non valida.");[/FONT]
[FONT=Verdana]                    break;[/FONT]
[FONT=Verdana]            }[/FONT]
[FONT=Verdana]        } while (scelta != 5);[/FONT]
[FONT=Verdana]    }[/FONT]
[FONT=Verdana]}
[/FONT]

Codice:
import java.util.Locale;
import java.util.Scanner;


public class Conto
{
    Scanner leggi = new Scanner(System.in).useLocale(Locale.US);;
    double saldo = 0;
    double importo = 0;
    int numop;
    
    Operazioni operazioni = new Operazioni();
    
    public void versamento()
    {
        try{
        System.out.println("Inserisci l'importo da versare: ");
        saldo = leggi.nextDouble();
        //passare operazione
        numop = 1;
        }catch(NumberFormatException e)
        {
            System.err.println("Inserisci un importo valido");
        }
    }
    
    
    public void prelievo()
    {
        if(saldo <= 0)
        {
            System.err.println("Fondi insufficienti");
        }
        else
        {
        try
        {    
        System.out.println("Inserisci l'importo da prelevare: ");
        importo = leggi.nextDouble();
        saldo -= importo;
        }catch(NumberFormatException e)
        {
            System.err.println("Inserisci un importo valido");
        }    
        }
    }
    
    public double getsaldo()
    {
        System.out.println("Il saldo corrente è: " + saldo + " €");
        return saldo;
    }
    
    public void visualizza()
    {
        
    }
}

HO RISOLTO!!! CHIUDO!
 
Stato
Discussione chiusa ad ulteriori risposte.