Laufzeitfehler erkennen

Studi123

Mitglied
Hallo!
Bereite mich gerade für die Uni für eine Klausur in Java vor und komme hier bei einer Aufgabe einfach nicht weiter:

attachment.php


[Java]public class Ausgeben {

public static void main(String[] args){
System.out.println(join(args, ","));
}

private static String join(String[] array, String seperator){
String verknuepft;
verknuepft = array[0];
for (int i = 1; i <= array.length; ++i)
verknuepft += seperator + array;
return verknuepft;
}
}
[/Java]

Wenn ich das Aufrufe spuckt mir Eclipse folgendes aus:

Code:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
	at Ausgeben.join(Ausgeben.java:7)
	at Ausgeben.main(Ausgeben.java:12)

Wo liegt der Fehler? Habe natürlich die Parameter in Eclipse extra angegeben..
 

Anhänge

  • Bildschirmfoto 2014-07-22 um 08.40.37.jpg
    Bildschirmfoto 2014-07-22 um 08.40.37.jpg
    80 KB · Aufrufe: 58
Zuletzt bearbeitet:

knilch

Bekanntes Mitglied
Hi,
Die Exception:
Java:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
sagt aus, dass du versucht hast, auf ein Element im Array zuzugreifen, das nicht existiert, bzw. dass du ausserhalb des Array einen Zugriff machen woltest.

Ein Tip:
Arrays beginnen in Java, C#, C++ etc. mit index 0...
also ist das letzte Element vom Array: array.length-1.
Ändere den for loop so ab, dass das letzte element array.length-1 ist, also
Java:
for (int i = 1; i < array.length; ++i) {
....
}
oder
Java:
for (int i = 1; i <= array.length-1; ++i) {
...
}
 
Zuletzt bearbeitet:

Natac

Bekanntes Mitglied
Ist aber ne ganz typische Stelle, das man in einer Schleife zu weit läuft. Also für die Prüfung solltest du dir auf jeden Fall merken, das du sofort alle Schleifenköpfe checkst, wenn die Aufgabe irgendwas mit "Laufzeitfehler" heist. ;)

Im übrigen könnte man noch einen Laufzeitfehler diagnostizieren, da im Programm davon ausgegangen wird, dass args[0] belegt ist.
Man könnte das Programm ja auch ohne Parameter aufrufen. Dann bekommst du in Zeile 9 auch eine IndexOutOfBoundsException, weil es das Element 0 in einem leeren Array nicht gibt.

Ist in der Aufgabe nicht gefordert, aber auf jeden Fall eine Schwäche im Programm, derer man sich bewusst sein sollte.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Laufzeitfehler bei Übungsaufgabe Java Basics - Anfänger-Themen 4
C Überprüfen eines Queltextes auf Syntax-Fehler und Laufzeitfehler Java Basics - Anfänger-Themen 2
K Vererbung Zuweisungsfehler (Kompilier- und Laufzeitfehler) herausfinden Java Basics - Anfänger-Themen 3
Z Laufzeitfehler Java Basics - Anfänger-Themen 8
S Threads Laufzeitfehler bei invokeall für Callables Java Basics - Anfänger-Themen 2
I Laufzeitfehler ??? Java Basics - Anfänger-Themen 11
W Laufzeitfehler: NullPointerException Java Basics - Anfänger-Themen 12
S Laufzeitfehler beim JButtondrücken Java Basics - Anfänger-Themen 8
S Übersetzungsfehler oder Laufzeitfehler Java Basics - Anfänger-Themen 3
L Laufzeitfehler/keineAhnungwarum/needhelp Java Basics - Anfänger-Themen 3
E Plötzlich Abbruch mit Laufzeitfehler Java Basics - Anfänger-Themen 4
B Laufzeitfehler Java Basics - Anfänger-Themen 2
T scanner eingaben erkennen und umtauschen Java Basics - Anfänger-Themen 4
B Zusammenhängende Blöcke bei x-gewinnt erkennen? Java Basics - Anfänger-Themen 14
D falsche eingabe erkennen Java Basics - Anfänger-Themen 2
H Logik Fehler erkennen Java Basics - Anfänger-Themen 21
1 Wie dieses Muster am einfachsten erkennen? Java Basics - Anfänger-Themen 32
Yasemin bahar Muster erkennen Java Basics - Anfänger-Themen 13
U Muster in einem Array erkennen Java Basics - Anfänger-Themen 8
N Eingabe erkennen, ob groß oder kleingeschrieben worden ist Java Basics - Anfänger-Themen 22
N palindrom erkennen Java Basics - Anfänger-Themen 3
A Figur erkennen, aber Abweichung falsch Java Basics - Anfänger-Themen 2
C Erkennen ob Frame geschlossen wurde Java Basics - Anfänger-Themen 2
M Rationale Zahl erkennen - Kurze Frage zum Restwert nach Division Java Basics - Anfänger-Themen 3
P Eigenschaft eines imperativen Algo (Pseudocode) sofort erkennen Java Basics - Anfänger-Themen 1
G Verlassen einer ComboBox erkennen Java Basics - Anfänger-Themen 16
S Java Großbuchstabe erkennen Java Basics - Anfänger-Themen 5
D Wenn ich repaint(); mache, flackert es so stark, das man fast nichts erkennen kann. Java Basics - Anfänger-Themen 11
B Unterschiede in einer Liste erkennen Java Basics - Anfänger-Themen 1
O String: Befehl und Wert erkennen. Java Basics - Anfänger-Themen 4
S Zeilenumbruch mit Scanner erkennen Java Basics - Anfänger-Themen 9
J Leerzeichen im Pfad automatisch erkennen Java Basics - Anfänger-Themen 30
M Input/Output Zeilenumbrüche erkennen und beibehalten Java Basics - Anfänger-Themen 4
X XML-Eintrag an Attribute erkennen Java Basics - Anfänger-Themen 2
N Erkennen ob Linkshänder Maus Java Basics - Anfänger-Themen 4
L In Javakara Palindrom erkennen. Java Basics - Anfänger-Themen 9
B Tastatureingabe erkennen Java Basics - Anfänger-Themen 8
D Input/Output Buchstaben als bestimmte Zahl erkennen Java Basics - Anfänger-Themen 4
F Blinken oder Dauer ein erkennen Java Basics - Anfänger-Themen 6
F Linien und Kurven erkennen Java Basics - Anfänger-Themen 2
T Richtigen Wert erkennen Java Basics - Anfänger-Themen 9
D Klassenmethode: Befehl erkennen, dann int zurückgeben Java Basics - Anfänger-Themen 2
T Erste Schritte Methoden anwenden und erkennen Java Basics - Anfänger-Themen 5
D Erste Schritte Array erkennen Java Basics - Anfänger-Themen 4
B Erkennen, wann static oder nicht? Java Basics - Anfänger-Themen 7
J Byte Folge erkennen Java Basics - Anfänger-Themen 5
F Attribute von Feldinhalten erkennen Java Basics - Anfänger-Themen 6
N Erste Schritte Doppelwerte erkennen Java Basics - Anfänger-Themen 5
H Schachbrett erkennen Java Basics - Anfänger-Themen 19
T Erste Schritte Leerzeile in JAVA erkennen /übergehen Java Basics - Anfänger-Themen 9
S Erkennen ob Zahl durch 500Teilbar ist Java Basics - Anfänger-Themen 21
Java-Insel StringBuilder Zeilenumbrüche erkennen Java Basics - Anfänger-Themen 3
H Datei in kleine Stücke teilen und wieder erkennen Java Basics - Anfänger-Themen 10
T Erkennen ob ein Pfad lokal oder im Netzwerk ist Java Basics - Anfänger-Themen 13
X String Sonderzeichen/Zahlen erkennen Java Basics - Anfänger-Themen 3
P System - Tage erkennen ( System Time ?) Java Basics - Anfänger-Themen 3
M Betriebssystem erkennen? Java Basics - Anfänger-Themen 12
lumo Collections Array - erkennen von positionsänderungen Java Basics - Anfänger-Themen 5
M Muster erkennen. Idee: Fassade. Java Basics - Anfänger-Themen 3
M Java-Prog soll Texte innerhalb Bildern erkennen Java Basics - Anfänger-Themen 2
S Leere Datei erkennen Java Basics - Anfänger-Themen 5
E ActionListener in anderer Klasse erkennen Java Basics - Anfänger-Themen 13
Kukulkan Java-Version (ME, SE) erkennen und darauf reagieren? Java Basics - Anfänger-Themen 35
E Position erkennen und überlappungen feststellen Java Basics - Anfänger-Themen 4
3 Leerzeichen erkennen Java Basics - Anfänger-Themen 3
A Gruppen von Namen erkennen Java Basics - Anfänger-Themen 21
M In Router einloggen und PCs im Netzwerk erkennen Java Basics - Anfänger-Themen 18
M ziffer in zahl erkennen mit boolean Java Basics - Anfänger-Themen 12
D Zahl erkennen Java Basics - Anfänger-Themen 4
T Image Position erkennen Java Basics - Anfänger-Themen 6
S Sonderzeichen in einem String erkennen Java Basics - Anfänger-Themen 20
S Filelock erkennen Java Basics - Anfänger-Themen 6
A Angeschlossenes Gerät am Com Port erkennen Java Basics - Anfänger-Themen 4
L Zeilenwechselsequenz erkennen aus der Datei heraus Java Basics - Anfänger-Themen 2
S Erkennen der Eingabe Java Basics - Anfänger-Themen 13
G eine straße im kartenspiel erkennen (algorithmus) Java Basics - Anfänger-Themen 4
G Bildinformationan auslesen - OCR - Zahlen erkennen Java Basics - Anfänger-Themen 10
B Properties erkennen, auslesen Java Basics - Anfänger-Themen 7
M in Textfile Strukturen erkennen Java Basics - Anfänger-Themen 5
kulturfenster Teilstring erkennen Java Basics - Anfänger-Themen 5
L Laufwerksauswahl / Laufwerke erkennen Java Basics - Anfänger-Themen 3
B Threadende erkennen Java Basics - Anfänger-Themen 6
E Klassen erkennen in einer Aufgabenstellung Java Basics - Anfänger-Themen 6
L path einlesen und erkennen ob es für windows oder linux ist Java Basics - Anfänger-Themen 8
H Zeilenanzahl eines Strings erkennen Java Basics - Anfänger-Themen 2
S Umlaute und Sonderzeichen erkennen Java Basics - Anfänger-Themen 12
C Erkennen einer gedrückten Taste Java Basics - Anfänger-Themen 6
S CD/DVD-Laufwerke erkennen mit Java Java Basics - Anfänger-Themen 3
R erkennen von Wortende Java Basics - Anfänger-Themen 5
N Veränderungen in JTextArea erkennen Java Basics - Anfänger-Themen 5
K Wortpaare in Texten erkennen Java Basics - Anfänger-Themen 8
C Japanische Zeichen erkennen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben