Überprüfen, ob ein array sortiert ist, true oder false zurückgeben

Ich Schreibe ein einfaches Programm, das nur true zurück, wenn ein array sortiert ist, sonst false und ich bekomme immer eine exception in eclipse, und ich kann einfach nicht herausfinden, warum. Ich Frage mich, wenn jemand könnte einen Blick auf meinen code und erklären, warum ich bin immer ein array out of bounds exception. Danke für Eure Hilfe im Voraus.

public static boolean isSorted(int[] a) 
{

    int i;
    for(i = 0; i < a.length; i ++);{
        if (a[i] < a[i+1]) {
            return true;
        } else {
            return false;   
        }
    }
}
public static void main(String[] args)
{
          int ar[] = {3,5,6,7};
          System.out.println(isSorted(ar)); 
}
post die Ausnahme
Laufen durch den code. Sie haben 4 Einträge, sollte es einfach sein. i gleich 3 an einem gewissen Punkt, was eine[3+1] versuchen Sie, zuzugreifen?
überprüfen Sie Ihre index-Grenzen
Beachten Sie auch, dass der code nicht tut, was Sie sagen. Es wird true zurückgeben, wenn es zwei oder mehr aufeinander folgenden geordneten Elemente, aber nicht unbedingt alle.
Tipp beginnen Sie Ihre Schleife bei i=1 und vergleichen Sie niedriger sein, wenn die Länge >1

InformationsquelleAutor user2101463 | 2013-10-18

Schreibe einen Kommentar