Boucle et comparaison de string
Bonjour à tous!
Débutant en j2me, je m'attache à créer une petite midlet dans laquelle j'ai une boucle qui va remplir un String[] à condition que les valeurs lues ne soient pas identiques aux précédentes.
Pour ce faire j'utilise la boucle suivante:
Code:
1 2 3 4 5 6 7
| for(int i=0;i<currentPlane.itemsList.size();i++)
{
currentItem=(Item)currentPlane.itemsList.elementAt(i);
if(i>0)
if(!(menuCatContent[i].equals(menuCatContent[i-1])))
menuCatContent[i]=currentItem.category;
} |
Le projet compile, s'exécute, mais n'effectue qu'un seul tour de boucle et me renvoie une erreur dans mon display (??). Je test alors en enlevant la comparaison:
Code:
1 2 3 4 5 6
| for(int i=0;i<currentPlane.itemsList.size();i++)
{
if(i>0)
currentItem=(Item)currentPlane.itemsList.elementAt(i);
menuCatContent[i]=currentItem.category;
} |
Et là, aucun problème, tout marche (enfin je me retrouve avec plusieurs fois le même item dans mon String[])
L'erreur retournée est la suivante:
TRACE: <at java.lang.ArrayIndexOutOfBoundsException: 0>, Exception caught in Display class
java.lang.ArrayIndexOutOfBoundsException: 0
Et j'avoue ne vraiment pas comprendre le soucis, tout parait pourtant ok...
J'utilise CLDC 1.1 et MIDP 2.0
Si vous aviez une piste, ce serait super, merci d'avance pour m'avoir lu