Ciao a tutti, ora vi spiego il mio problema, praticamente ho problemi nelllo sviluppare il codice di saldoTitolare e di saldoPiuAlto.
Ciao e grazie anticipatemente dell'aiuto.
In saldoTitolare mi viene restituito questo errore: C:\Documents and Settings\gianni\Desktop\gianni\java uni\Esame\ContoCorrente.java:49: missing return statement
}
codice:/** Classe ContoCorrente: descrive un conto corrente*/ public class ContoCorrente { private int numero; private Persona [] titolari; private int saldo; /** Costruttore */ public ContoCorrente(int numero, Persona [] titolari, int saldo) { this.numero = numero; this.titolari = titolari; this.saldo = saldo; } public String toString(){ String testo = "cc: " + numero + " Saldo: "+ saldo+ " \n intestato a: \n"; for (int i=0; i<titolari.length; i++) testo +=titolari[i].toString()+"\n"; return testo; } /** Implementare il metodo public int saldoTitolare (Persona p) che restituisce il saldo di questo conto corrente se la persona "p" e' uno dei titolari del conto corrente stesso; altrimenti, quando la persona "p" non e' uno dei titolari di questo conto corrente, il metodo restituisce -1. */ public int saldoTitolare (Persona p){ /*implementare il metodo*/ int i; for(i=0; i < titolari.length; i++){ if (titolari[i].getCognome().equals(p.getCognome())){ saldo = this.saldo; //non so cosa bisognerebbe mettere return saldo; } else return -1; } } }codice:public class EsameContoCorrente { public static void main(String[] args) { Persona [] v1 = new Persona [2]; v1[0] = new Persona("Mario", "Rossi"); v1[1] = new Persona("Luca", "Bianchi"); Persona [] v2 = new Persona[1]; v2[0] = new Persona("Italo", "Verdi"); Persona [] v3 = new Persona [3]; v3[0] = new Persona("Giacomo", "Gialli"); v3[1] = new Persona("Filippo", "Violetti"); v3[2] = new Persona("Emanuele", "Marroni"); ContoCorrente [] banca = new ContoCorrente[3]; banca[0] = new ContoCorrente(123, v1, 1230); banca[1] = new ContoCorrente(234, v2, 1343); banca[2] = new ContoCorrente(345, v3, 905); for (int i=0; i<banca.length; i++) System.out.println(banca[i]); System.out.println(); // L'array di stringhe, chiamato "cognomi", deve essere riempito // con 5 cognomi. System.out.println("Inserisci un 5 elenco di cognomi"); String[] cognomi = ArrayUtil.readStringArray(); Persona [] amici = new Persona[5]; amici[0] = new Persona("Mario", cognomi[0]); amici[1] = new Persona("Luca", cognomi[1]); amici[2] = new Persona("Italo", cognomi[2]); amici[3] = new Persona("Filippo", cognomi[3]); amici[4] = new Persona("Emanuele", cognomi[4]); int piuAlto = saldoPiuAlto(banca, amici); if (piuAlto==-1) System.out.println("Nessuna delle persone inserite ha un conto in banca"); else System.out.println("Tra le persone inserite, il saldo piu alto e' "+ piuAlto); }//main /**Implementare il metodo public static int saldoPiuAlto(ContoCorrente[] conti, Persona [] titolari) che restituisce il saldo piu' alto fra i conti correnti in "conti" che sono intestati ad almeno uno delle persone in "titolari". Se nessuno dei conti correnti in "conti" e' intestato a persone in "titolari" il metodo restituisce -1. Utilizzare il metodo saldoTitolare (da implementare nella classe ContoCorrente) per stabilire il saldo di un conto corrente intestato ad una data persona. */ public static int saldoPiuAlto(ContoCorrente[] conti, Persona [] titolari){ /* sviluppare il codice del metodo */ int i; int max = conti[i]; for(i=0; i < conti.length; i++) { if(conti[i].saldoTitolare(cognome)) if (conti[i] > max) max = conti[i]; return max; } }codice:/** Classe Persona: descrive persone. */ public class Persona { private String nome; private String cognome; /** Costruttore di Default vuoto */ public Persona() { nome = " "; cognome =" "; } /** Costruttore con parametri*/ public Persona(String nomeP,String cognomeP) { nome = nomeP; cognome = cognomeP; } public String getNome () { return nome; } public String getCognome() { return cognome; } public String toString() { return "Nome : " + nome + " Cognome : " + cognome; } }// fine definizione classe

Rispondi quotando

