Kleiner unauffindbarer Fehler im Programm

Mino1337

Mitglied
Hallo,

Stecke in den Prüfungsvorbereitungen für die Informatikprüfung und versuche zur Übung ein von meiner Uni zur verfügung gestelltes Übungsprogramm zum laufen zu bringen. Es ist Fertig aber ich bekomme einen Fehler am Ende den ich mir nicht erklären kann.

Das Programm soll die Booleschen Werte von Mehrfachverknüpfungen Ausgeben die als Arrays bereitgestellt werden.
Vier Arrays gilt es zu überprüfen in verschiedenen Ausführungen, beim vierten haperts.
Ich trage mal hier nur die relevanten Klassen ein:

Das ist das Hauptprogramm welches die Arrays zur verfügung stellt mit den Werten.
Ab Zeile 15 ist der Code Relevant.

Der Generalfehler ist "Exception in Thread "main" Java.lang.ArrayIndexOutofBoundsException: 4"

Fehler out of Bounds Z22

Java:
public class TestMultiBoolOps {
public static void main(String[] args) {
System.out.println("Erstes DreivariablenBoolOps−Beispiel:");
BoolescheOperationen dbo1 = new DreivariablenBoolOps(true, true, false);
System.out.println(dbo1); // ruft automatisch dbo.toString() auf

System.out.println("Zweites DreivariablenBoolOps−Beispiel:");
System.out.println(new DreivariablenBoolOps(true, true, true));

System.out.println("Erstes ArrayBoolOps−Beispiel:");
boolean[] array1 = {true, true, true, false, true};
BoolescheOperationen abo1 = new ArrayBoolOps(array1);
System.out.println(abo1);

System.out.println("Zweites ArrayBoolOps−Beispiel:");
boolean[] array2 = new boolean[4];
array2[0] = true;
array2[1] = true;
array2[2] = true;
array2[3] = true;
BoolescheOperationen abo2 = new ArrayBoolOps(array2);
System.out.println(abo2);
}
}

Dies ist die Klasse in der ich alles verarbeite:
Fehler out of Bounds Z19 und Z33

Java:
import java.util.Arrays;
public class ArrayBoolOps implements BoolescheOperationen {

private boolean[] bArray;


public ArrayBoolOps(boolean[] k){
this.bArray=k;
}

public String AA(){
String k = Arrays.toString(this.bArray);
return k;
}

public boolean und(){
boolean MU=this.bArray[0];
for(int i=1;i<=this.bArray.length;i++){
MU=MU&&this.bArray[i];
}
return MU;
}

public boolean oder(){
boolean MO=this.bArray[0];
for(int i=1;i<=this.bArray.length;i++){
MO=MO||this.bArray[i];
}
return MO;
}

public String toString(){
return String.format("bArray:%s, und:%s: oder:%s", AA(), und(), oder());
}
}

Ich sehe nicht wie es bei dem zweiten Array dieser Klasse diesen fehler geben kann die Rahmenbedingungen sind gleich wie beim ersten wo alles wunderbar funktionierte ...

Vielen Dank für Anregungen ...
 
Zuletzt bearbeitet:

Rubber

Aktives Mitglied
Hi,
mir ist aufgefallen, dass du hier:
Java:
for(int i=1;i<=this.bArray.length;i++){

i = 1 setzt.
Arrays beginnen aber bei 0.

Des Weiteren nutzt du "<=".
Das führt bei dem Wert i = 4 dazu, dass die Bedingung immernoch erfüllt ist, weil die länge auch 4 ist.
Ein Feld array[4] gibt es aber nicht und somit kommt es zu der
Java.lang.ArrayIndexOutofBoundsException: 4
 

X5-599

Top Contributor
Er fängt mit i=1 an, weil er das erste Array Element bereits hier abfragt:
Java:
boolean MU=this.bArray[0];

Erklärung des Problems:
Es liegt am Inhalt der beiden Arrays:
Das erste Array enthält ein "false", welches bei der && Verknüpfung dafür sorgt, dass die nachfolgende Anweisung "this.bArray" (Zeile 19) im letzten Durchgang der Schleife nicht mehr ausgeführt wird. (Kein Fehler)
Das zweite Array beinhaltet aber nur "true" was dafür sorgt das auch im letzten Durchgang der Schleife das "this.bArray" (Zeile 19) ausgeführt wird. (Fehler)
Und da du, wie bereits erwähnt wurde als Schleifenbedingung "i<=this.bArray.length" hast, ist "i" im letzten Durchgang 1 grösser als der höchste zulässige Index.
 
Zuletzt bearbeitet:

Mino1337

Mitglied
Vielen Dank :)

Ich habe immer so meine Schwierigkeiten mit der Bedingung in der for-Schleife, ich kann mir das nicht so einfach vorstellen, gibt es speziell bei Arrays fausregeln oder ein Schema wenn man Arrays "Abspulen" will womit es einfacher ist die Bedingungen Festzulegen ?

Bisher wars immer >= oder <= deswegen habe ich nur sehr kurz drüber nachgedacht. In der Prüfung habe ich nichteinmal den Compiler da muss ich dann einen Fehler oder sowas im gedruckten Code finden oder per Hand Codezeilen niederschreiben ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Eine Methode die erkennt ob die ein gegebene zahl größer oder kleiner sein muss Java Basics - Anfänger-Themen 2
KogoroMori21 Java Datum Differenz (kleiner Fehler) Java Basics - Anfänger-Themen 10
A jar File kleiner bekommen Java Basics - Anfänger-Themen 3
O Vererbung Ueben mit kleiner Datenstruktur von Räumen Java Basics - Anfänger-Themen 10
P String größer kleiner gleich vergleichen Java Basics - Anfänger-Themen 6
Q Variablen If Anweisung, kleiner fehler Java Basics - Anfänger-Themen 8
F Kleiner Formatierungsfehler Java Basics - Anfänger-Themen 3
J Kleiner Taschenrechner! Anfänger braucht Hilfe :( Java Basics - Anfänger-Themen 2
S GUI kann im WindowBuilder nicht mehr (größer kleiner ziehen) Java Basics - Anfänger-Themen 2
D kleiner Taschenrechner mit switch fehlerhaft Java Basics - Anfänger-Themen 1
H Erste Schritte Ergebniss soll kleiner als 1000 sein Java Basics - Anfänger-Themen 4
DStrohma Operatoren Kleiner-Zeichen in Größer-Zeichen ändern wenn boolen true? Java Basics - Anfänger-Themen 6
E Erste Schritte Array soll kleiner werdenden String erstellen Java Basics - Anfänger-Themen 5
J Vererbung Kleiner Fehler, weiß aber nicht warum und wo Java Basics - Anfänger-Themen 9
R Inhalt vom String größer oder kleiner als Java Basics - Anfänger-Themen 16
J kleiner Fehler im FAQ Parser für mathematische Formeln Java Basics - Anfänger-Themen 5
F Objekte vergleichen kleiner/größer? Java Basics - Anfänger-Themen 4
L Kleiner erster p2p-Chat Problem Java Basics - Anfänger-Themen 2
K Kleiner Fehler bei Methoden Implementierung Java Basics - Anfänger-Themen 6
R Primzahl kleiner 3 Java Basics - Anfänger-Themen 2
O Ist diese Zahl größer oder kleiner 0? Java Basics - Anfänger-Themen 6
M Kleiner Fehler im Array... Java Basics - Anfänger-Themen 2
E BubbleSort kleiner Fehler? Java Basics - Anfänger-Themen 14
T kleiner fehler mit der "Zählvariable" Java Basics - Anfänger-Themen 6
S Kleiner Palindromtest Java Basics - Anfänger-Themen 4
C Größer - Kleiner - Zeichen in Strings Java Basics - Anfänger-Themen 3
M Kleiner Vokabeltrainier Java Basics - Anfänger-Themen 45
V Kleiner Wecker mit Gui (Brauche Tipps) Java Basics - Anfänger-Themen 5
A JButton wird kleiner mit Border Java Basics - Anfänger-Themen 3
A Kleiner Fehler Java Basics - Anfänger-Themen 4
G Kleiner Denkfehler Java Basics - Anfänger-Themen 23
G Kleiner Währungsrechner - Probleme ! Java Basics - Anfänger-Themen 16
H Fenster größer kleiner machen(Inhalt soll mitziehen) Java Basics - Anfänger-Themen 4
F Kleiner Fehler, den ich aber leider nicht finde. Java Basics - Anfänger-Themen 4
G gerade zahlen größer und kleiner null Java Basics - Anfänger-Themen 6
J Unauffindbarer Fehler bei Forschleifen Java Basics - Anfänger-Themen 2
M unauffindbarer Fehler Console, aber unter Eclipse gehts. =( Java Basics - Anfänger-Themen 6
F Kann mir jemand bei dem Fehler helfen? Java Basics - Anfänger-Themen 6
Juelin jedit Fehler beim starten Java Basics - Anfänger-Themen 2
I Frage Thymeleaf -> Fehler ignorieren und mit "" ersetzen? Java Basics - Anfänger-Themen 15
E Matrizenmultiplikation Fehler Java Basics - Anfänger-Themen 0
Z Fehler Zeiterfassungsprogramm Anzeige Java Basics - Anfänger-Themen 3
C SwingWorker mit Fehler Java Basics - Anfänger-Themen 2
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
G Compiler-Fehler Fehler in Zeile 1 beheben, wie? Java Basics - Anfänger-Themen 9
W Fehler in der Datei pom.xml Java Basics - Anfänger-Themen 19
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
monsterherz einfache Methode mit Fehler den ich nicht finde Java Basics - Anfänger-Themen 21
monsterherz if / else if mit Fehler den ich leider nicht finde Java Basics - Anfänger-Themen 11
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
ohneInformatik; Dynamische Zinsen. Wo liegt der Fehler? Java Basics - Anfänger-Themen 4
Fiedelbambu deriveFont Fehler wer kann Helfen? Java Basics - Anfänger-Themen 4
I Ical4j / Kalender einlesen von URL - Fehler: "Unparseable date" Java Basics - Anfänger-Themen 16
Lion.King Fehler in double und int Java Basics - Anfänger-Themen 7
H BlueJ: was genau ist hier der Fehler? Java Basics - Anfänger-Themen 14
berserkerdq2 Habe ein Spiel entwickelt, dass immer in der 4 Runde einen cast-Fehler erhält Java Basics - Anfänger-Themen 3
D Datentypen LocalDate.parse() ergibt Fehler Java Basics - Anfänger-Themen 5
stormyark Fehler beim überschreiben einer Variable Java Basics - Anfänger-Themen 1
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
N Fehler "Cannot instantiate the type" Java Basics - Anfänger-Themen 3
L Ich weis nicht was der Fehler ist! Java Basics - Anfänger-Themen 14
L30nS JNI Fehler, JRE und JDK Java Basics - Anfänger-Themen 8
E Executable jar file fehler Java Basics - Anfänger-Themen 9
S Fehler beim Programm Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
J Syntax-Fehler? Java Basics - Anfänger-Themen 2
Jose05 Fehler im Programm feststellen Java Basics - Anfänger-Themen 2
S Methoden 2 non-static Methoden, trotzdem Fehler "non static method can not be referenced from a static context" Java Basics - Anfänger-Themen 9
G Taschenrechner ergibt Fehler in if-Abfrage Java Basics - Anfänger-Themen 6
I Fehler bei for-Schleife Java Basics - Anfänger-Themen 6
lol5443 Tic Tac Toe Fehler Java Basics - Anfänger-Themen 5
K Fehler bei der Implementierung Java Basics - Anfänger-Themen 6
N Fehler im Code (Aufgabe für Anfänger) Java Basics - Anfänger-Themen 11
W Verschachtelte If-else --> finde meinen Fehler nicht Java Basics - Anfänger-Themen 30
J Fehler bei array aus anderer Klasse Java Basics - Anfänger-Themen 3
H Fehler bei integer Division Java Basics - Anfänger-Themen 28
C Fehler beim erstellen eines Objektes Java Basics - Anfänger-Themen 3
N Was bedeutet dieser Fehler Java Basics - Anfänger-Themen 2
fuerteb Compiler-Fehler Methode wird nicht bzw. als Fehler erkannt Java Basics - Anfänger-Themen 4
Lion.King Fehler Java Basics - Anfänger-Themen 5
AlexG. Nullpointer exeption Fehler Java Basics - Anfänger-Themen 0
C Fehler im Code Java Basics - Anfänger-Themen 10
J Anfänger, Fehler; "Der Hund liegt begraben" Java Basics - Anfänger-Themen 3
Aqtox Hallo ich muss für die Schule ein Wuerfell Duell erstellen jedoch habe ich ein fehler Java Basics - Anfänger-Themen 4
V Wer findet den Fehler :) Java Basics - Anfänger-Themen 12
B ArrayIndexOutOfBoundsException, ich finde den Fehler nicht? Java Basics - Anfänger-Themen 10
A Compiler Fehler - not a statement Java Basics - Anfänger-Themen 2
Arita welche Fehler gibt es noch? wie kann ich es noch vervollständigen Java Basics - Anfänger-Themen 15
S Fehler bei Code mit SubStrings für mich nicht auffindbar. Java Basics - Anfänger-Themen 4
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
H Logik Fehler erkennen Java Basics - Anfänger-Themen 21
T Fehler in Caesar-Chiffre Java Basics - Anfänger-Themen 7
R Fehlermeldung aber WO liegt der Fehler? Java Basics - Anfänger-Themen 7
B Nicht reproduzierbarer Fehler bei Kompilierung - Shortcut "Bereinigung" Compiler ? Java Basics - Anfänger-Themen 4
Nerdinfekt BMI Rechner, fehler beim Zurückgeben des Strings? Java Basics - Anfänger-Themen 2
pumpgun99 Fehler Meldung "else without if" Java Basics - Anfänger-Themen 3
P Was bedeutet dieser Fehler? Java Basics - Anfänger-Themen 31
N java.util.InputMismatchException Fehler Java Scanner Java Basics - Anfänger-Themen 5
H Fehler: NullPointerException und ich weiß net warum Java Basics - Anfänger-Themen 4
R Ich sehe meinen fehler nicht Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben