warum wird die Schleife nicht bis zum Ende ausgeführt

GGK_01

Bekanntes Mitglied
Hallo,

ich habe ein Problem, dass meine Schleife irgendwo abgebrochen wird und ich weiss nicht warum das so ist.

für das erste Listenelement wird die Methode checkMethod(String string) aufgerufen, dann ist Ende...die for-Schleife wird nicht fortgesetzt...ohne Fehlermeldung

Der Aufruf
Java:
System.out.println(ignore)
wird nicht mehr ausgeführt.

Hat jemand einen Tip für mich?


Liste (LinkedList) totalList enthält 5 Elemente
Die Schleife:
Java:
			boolean ignore;
		for (int i = 0;i<totalList.size();i++){
			System.out.println("Check gestartet: "+totalList.get(i).toString());
			checkMethod(totalList.get(i).toString());
			System.out.println(ignore);
			//*Print(ignore+"\t"+totalList.get(j).toString());			
		}

Die Methode:
Java:
	private boolean checkMethod(String string) throws IOException {
		// TODO Auto-generated method stub
		
		getIgnoreList();		
		String[] ignoreDo = ignoreList.split(";");
		System.out.println("Check für: "+string);
		for (int i=0;i<=ignoreDo.length;i++) {
			checkIgnore=false;
			String ignoreItem = ignoreDo[i].toString();
			
			System.out.println(i+": "+ignoreDo[i]+"\t"+string+" "+string.contains(ignoreItem));
			if (string.contains(ignoreItem)) {
				System.out.println(checkIgnore+"\t"+string+"\t"+ignoreItem);
				checkIgnore =true;
				break;
			} else {
				checkIgnore =false;
				System.out.println(checkIgnore+"\t"+string+"\t"+ignoreItem);
				continue;
				
			}

		}
		System.out.println("Ende Check");

		return checkIgnore;
	}

Danke

GGK
 
hier....ich verstehe dienen hinweiss noch nciht ganz

Java:
		JButton btnNagiosEinlesen = new JButton("Nagios");
		btnNagiosEinlesen.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				nagios();
				try {
					finalList();
				} catch (IOException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
			}


		});
 
ja, hast recht...aber es wird einfach nichs geworfen...Ich catche jetzt direkt und lasse die Throws-anweisung weg...dennoch..kein Fehler


Lasse ich in der ersten Schleife den Aufruf der Methode
Java:
checkMethod(totalList.get(i).toString());
weg, dann werden alle Elemente der LinkedList durchlaufen.

GGK
 
in Zeile 7 müsste es
Java:
for (int i=0;i<=ignoreDo.length-1;i++)
heissen.
(Arrays beginnen mit Index = 0)
warum bei Dir keine Fehlermeldung kommt - keine Ahnung.
 
nein...das war es nicht.

ich mach ja den Vergleich mit <=

Java:
for (int i=0;i<=ignoreDo.length;i++) {
 
Java:
String[] liste = "1;2;3;".split(";");
for (int i = 0; i <= liste.length;i++)
{
	String item = liste[i].toString();
	System.out.println(item);		
}
liefert garantiert eine ArrayIndexOutOfBoundsException
versucht auf element Index 3 zuzugreifen existieren aber nur Indizes 0,1,2

wenn dann so:
Java:
for (int i = 0; i < liste.length;i++)
 
Zuletzt bearbeitet:

Zurück
Oben