finden, die kleinste Zahl ist index
Er zurückkehrte, das zweite element im array, statt die kleinste Zahl ist index
Ich habe schon die Größe und all das Zeug, das ist nur die Methode
public static int FindSmallest (int [] arr1){//start method
int index = arr1[0];
for (int i=1; i<arr1.length; i++){
if (arr1[i] > index ){
index = arr1[i];
}
return index ;
}
return 0;
}//end method
- Stellen Sie diese bitte lesbar.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie würden Sie auf Papier ?
Dein problem ist, was Sie zurück.
Ein paar Dinge:
Das array sollte nicht statisch sein, Sie sollten übergeben Sie es als parameter an die arrayMin Methode;
min sollte eine lokale arrayMin variable, nicht statische;
min sollte initialisiert werden, um Integer.MAX_VALUE. Wenn Sie eine Initialisierung mit 1 und 2 passiert sein, der min-Wert des Arrays, die Sie nie zurückgeben;
Sie können nicht zurück, die mehrere Male von einer Methode. Sobald Sie return min, wird die Methode beendet. Wahrscheinlich gibt es einige Verwirrung über die der Variablen min wird wieder die kleinste Zahl aus den ersten i Elementen Satz. Es bedeutet wahrscheinlich, dass in jeder iteration wird die variable min haben (nicht mit return) die kleinste Zahl aus den ersten i Elementen.
Hier ein umgestalten: