Ajout de methodes a la classe String

[Résolu]
Signaler
Messages postés
18
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
27 novembre 2008
-
Messages postés
18
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
27 novembre 2008
-
Je travaille sur un programme qui lit un fichier et qui doit trouver des mot clef dans ce fichier et faire une action en fonction de ce mot clef

je decoupe le fichier ligne par ligne dans une ArrayList et je voudrai ajouter une fonction a la classe String qui verifiera si la String en cours contient le mot clef souhaite
ce qui donnerai

String read;
ArrayList in;
for(i=0; i < in.size(); i++)
{
read = in.get(i);
if(read.contains("OutputFileName")){::action::}
if(read.contains("ForEach")){::action::}
if(read.contains("CaseOf")){::action::}

}

voila en gros l'idee
je voudrais ajouter la methode contains() a la class String sans ,bien sur, modifier celle ci directement.

mais je ne sais meme pas si cela est possible.

D'avance Merci

>Madmax, Parce que le Java c'est bien :p

4 réponses

Messages postés
649
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
9 septembre 2004
7
oupps desole c'est une classe finale

mais en fait y'a le indexOf qui t'irais parfaitement :

if (read.indexOf("truc")!=-1){
...
}
Messages postés
649
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
9 septembre 2004
7
tu peut surcharger String ou alors avec la lib bcel wrapper la classe String pour ajouter dynamiquement ta methode...
Messages postés
18
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
27 novembre 2008

peut tu m'expiquer STP comment on fait une surcharge, car je ne sais pas comment faire.

Si tu as un petit exemple ;)

Merci

>Madmax, Parce que le Java c'est bien :p
Messages postés
18
Date d'inscription
mardi 2 septembre 2003
Statut
Membre
Dernière intervention
27 novembre 2008

Arf j'avais pas pense a cette methode.

Et oui comme string est en final il est impossible de lui ajouter une sous classe.

Merci beaucoup ca marche du tonnere.

>Madmax, Parce que le Java c'est bien :p