Fehlermeldung bei Schleife mit Array

Finn_lol

Neues Mitglied
Hallo,
ich habe bald eine Klausur in Informatik und ich habe dafür ein bisschen mit Testaufgaben geübt.
Dabei habe ich folgendes Programm zur Ermittlung der Summe bei 10 vorher eingegebenen Werten in ein Array geschrieben:
Java:
public class lern1 {
    static int [] feld= new int [10];
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = 0;
        for (int i = 0; i <feld.length; i++) {
            System.out.println("Bitte gib eine Zahl, die dem Feld hinzugefügt werden soll ein: ");
            a = sc.nextInt();
            feld[i] = a;
        }
        int summe = summe();
        System.out.println("Die Summe der eingegebenen Werte beträgt " + summe);
        }

    public static int summe(){
        int b=0;
        for (int i=1; i<=feld.length; i++) {
            b = feld[0]+feld[i];
        }

        return b;
    }
}
Leider erhalte ich beim Ausführen dann nach der Eingabe der 10 Werte die Fehlermeldung:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 10
at lernen.lern1.summe(lern1.java:22)
at lernen.lern1.main(lern1.java:15)
Kann mir da jemand helfen, was mein Fehler ist, damit ich ihn verstehen kann?
 
Übrigens, rein vom Prinzip her:
Was du genau in der Summe Methode rechnest, würde ich auch mal überprüfen.
Aktuell überschreibst du dauernd b mit dem Wert des ersten plus der Wert des aktuellen Elements.

Heißt, nahc der Schleife wird b lediglich die Summe aus erstem und letztem Element enthalten, was so sicherlich nicht beabsichtigt ist.
Ich würde mal gucken dass ich b auch auf der rechten Seite sinnvoll unterbringe ;-)
 

Zurück
Oben