codice:
public int getnDoc()
{
for(int i = 1; i <= 20;)
{
i++;
return i;
}
Questo ciclo for è sbagliatissimo! e anche inutile perché lo puoi sostituire con una variabile di istanza.
codice:
@Override
public void registra()
{
getnDoc();
}
Questo metodo non fa nulla apparte richiamare un metodo che restiuisce un intero ma che andrà perso perché non viene memorizzato da nessuna parte
codice:
public int getnDoc()
{
for(int i = 1; i <= 20;)
{
i++;
return i;
}
return nDoc;
}
Questo metodo deve restituire un solo valore... o i opprure nDoc....
codice:
public void leggiVoci()
{
Scanner sc = new Scanner(System.in);
System.out.println("Inserisci un fornitore e una voce di costo con il relativo valore");
fornitore = sc.nextLine();
voceCosto = sc.nextLine();
costo = sc.nextDouble();
//sc.close();
}
Dovresti specificare quali sono i dati richiesti e lo scanner non va chiuso.... non è un file...
codice:
for(int nDoc = 1; nDoc <= 20;)
{
nDoc++;
return nDoc;
}
Ache questo for è sbagliato apparte che interrompe la propria esecuzione al primo ciclo
Il resto è inutile leggerlo se non si risolvono questi problemi estremamente basilari!
un ciclo for si implementa così
codice:
for (int variabile; variabile <= numero di iterazioni; incremento ad ogni iterazione)
{
operazioni;
//e' sbagliatissimissimo mettere un return qua dentro!!!!!!!!!
}
return valoreDaRestituire;
esempio, un ciclo for che incrementa 20 volte la variabile x
codice:
int x=0;
for (int i=0; i<=20; i++)
{
x++;
}
return x;
l'unico caso in cui puoi mettere un return la dentro, ma sarebbe comunque incoerente, sarebbe:
codice:
public void inc(int x)
{
for (int i=0; i<=300; i++)
{
x++;
if(x==300) return;
}
}