CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[JAVA] Problème avec une ArrayList.

cubegame64
cubegame64
Niveau 14
10 janvier 2011 à 14:50:16

Bonjour,

J'ai une ArrayList<String>, dans laquelle j'ai rentré plusieurs chaines de caractères. Et j'aimerais convertir tout le contenu de cette ArrayList en majuscule, en utilisant la méthode toUpperCase.
Comment est ce que je pourrais procéder pour convertir "case à case", sans avoir à utiliser une seconde liste pour stocker les valeurs de ma premiere liste.

Merci.

Bunyan
Bunyan
Niveau 17
10 janvier 2011 à 15:09:36

for (String s : taListe)
s.toUpperCase();

Si tu n'utilises pas Java 6 et que tu ne désirs pas te mettre à cette version pour une raison ou une autre, tu as juste à créer un iterator sur ta liste et l'utiliser ensuite.

_skip
_skip
Niveau 10
10 janvier 2011 à 21:36:41

Mais en fait c'est faux car toUpperCase ne modifie pas la chaîne en cours mais en retourne une nouvelle. En java, les chaînes ainsi que les objets boxés sont immutables.

Bunyan
Bunyan
Niveau 17
10 janvier 2011 à 21:40:44

Bien ce qu'il me semblait x)

dnob700
dnob700
Niveau 10
11 janvier 2011 à 20:13:28

et quelque chose dans le genre "s = s.toUpperCase();" ?

godrik
godrik
Niveau 30
11 janvier 2011 à 20:25:41

according to skip, arraylist renvoie une nouvelle chaine donc la modifier ne fait rien, il faut supprimer celle qui est dans le array list et en mettre une nouvelle.

Paulop
Paulop
Niveau 12
11 janvier 2011 à 21:10:56

Ce que dis dnob700 fonctionne très bien. :)

godrik
godrik
Niveau 30
12 janvier 2011 à 00:11:56

never mind, j'ai lu de travers.

_skip
_skip
Niveau 10
12 janvier 2011 à 08:15:21

De tête quelque chose du genre:

for(int i = 0; i < array.size(); i++
array.set(i, array.get(i).toUpperCase() );

Bunyan
Bunyan
Niveau 17
12 janvier 2011 à 09:01:12

@Paulop : non :)

La variable "s" est une variable créée uniquement pour la boucle qui ne sert qu'à recevoir les valeurs du container parcouru (ici une ArrayList).
Par conséquent, lui affecter une nouvelle valeur n'aura aucune incidence sur l'ArrayList.

Paulop
Paulop
Niveau 12
12 janvier 2011 à 16:13:59

Exact, j'ai aussi lu de travers :-p
Ca ne fonctionne pas en utilisant un itérateur.
Bah je connais pas la méthode de _skip donc je ne sais pas, sinon tu peux faire deux ArrayList.

godrik
godrik
Niveau 30
12 janvier 2011 à 19:03:52

Merci _skip d'avoir remis de l'ordre dans le topic alors que 4 mecs (moi y compris) qui d'habitude sont de bons conseil ont raconte n'importe quoi avant :)

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment