Téléchargement
illégal
Posez votre question Signaler

[Java] Sortie boucle while [Résolu]

LCoileux - Dernière réponse le 25 avril 2009 à 17:28
Bonjour,
débutant en java, je suis en train de faire un programme qui me cherche les mots dans un fichier qui ne font pas partie d'une liste de mots-clés, et qui me les affiche.
Seulement voilà, je me suis servi d'une boucle while, cela marchait encore il y a quelques jours, et depuis hier, impossible de sortir de la boucle !
J'ai du modifier une partie du code sans m'en apercevoir en essayant de l'ameliorer, mais je ne voie pas où...
import java.io.*;
import java.util.*;

public class Test{	
	public static void main (String[] args){
		ArrayList al = new ArrayList();
		try {
		StreamTokenizer flot = new StreamTokenizer(new BufferedReader( new FileReader("ListeMotsClesEnzo.txt")));
		int lu = flot.nextToken();
		int i = 0;
		while (lu != StreamTokenizer.TT_EOF){
			al.add(flot.sval);
			lu = flot.nextToken();
			i++;
		}
		}
		catch (IOException e){ System.out.println("Erreur");}
		
		try {
		StreamTokenizer flot2 = new StreamTokenizer(new BufferedReader( new FileReader("TestEnzo.txt")));
		int lu2 = flot2.nextToken();
		String val = "";
		while (lu2 != StreamTokenizer.TT_EOF){
			val = "";
			for (int j=0; j<al.size(); j++){
				if (!(al.contains(flot2.sval))) 
						{val = flot2.sval;}
			}
		}
		if (!(val.equals(""))) {System.out.println(val);}
		lu2=flot2.nextToken();
		}	
		catch (IOException e){System.out.println("Erreur");}
	}
}

et c'est à ce niveau que ca bloque:
while (lu2 != StreamTokenizer.TT_EOF){
			val = "";
			for (int j=0; j<al.size(); j++){
				if (!(al.contains(flot2.sval))) 
						{val = flot2.sval;}
			}
		}

Merci d'avance
Lire la suite 

[Java] Sortie boucle while »

2 réponses
Réponse
+1
moins plus
Salut,

Cette boucle est nouvelle ?

while (lu2 != StreamTokenizer.TT_EOF){
val = "";
for (int j=0; j<al.size(); j++){
if (!(al.contains(flot2.sval)))
{val = flot2.sval;}
}
}

La boucle for (int j=0; j<al.size(); j++){
termine bien elle, mais comme lu2 reste à la même valeur la boucle while continue sans fin .

Cordialement,

Dan
Ajouter un commentaire
Réponse
+0
moins plus
Oups, je vient de trouver d'où ca venait. Une simple (mais chiante) erreur de fermeture, je fermais la boucle trop tôt...
Ajouter un commentaire
Ce document intitulé « [Java] Sortie boucle while » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?