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] tableau

TheMoskito
TheMoskito
Niveau 8
08 janvier 2010 à 20:59:49

bonjour,

juste une petite question...
J'ai un tableau définit comme ca :
String Items[]

J'aimerai créer une fonction qui ajoute facilement un élément à la fin de ce tableau.
En php j'aurai fait : Items[] = "mon Item".

Comment faire ca simplement en java ? J'ai des problème avec Items[Items.length] = "mon Item".....

merci

isukthar
isukthar
Niveau 10
08 janvier 2010 à 21:28:19

il faut prendre Items.lenght-1 puisque la numérotation commence à 0 et non à 1.

TheMoskito
TheMoskito
Niveau 8
08 janvier 2010 à 21:39:16

quoi que je mette cela ne compile pas, ce n'est pas un problème d'indice donc...

godrik
godrik
Niveau 30
08 janvier 2010 à 21:44:51

fournit un bout de code.

chris_27
chris_27
Niveau 10
08 janvier 2010 à 21:56:03

String Items("mon Item");

:question:

TheMoskito
TheMoskito
Niveau 8
08 janvier 2010 à 21:56:39

public class Order {

private String[] items;

public void addItem(String num) {
this.items[this.items.length-1] = num;
}

...
}

mes excuses... ca compile. par contre je me ramasse une erreur quand j'appelle addItems depuis mon navigateur...

chris_27
chris_27
Niveau 10
08 janvier 2010 à 22:00:16

String Items = new String("mon Item");

Ça se sent que j'ai pas touché à Java depuis plus de 4 ans moi. :rouge:

TheMoskito
TheMoskito
Niveau 8
08 janvier 2010 à 22:02:26

j'ai effectivement un null pointer exception, mais je ne sais pas comment initialiser un tableau vide...
Et tu ne me donne pas un tableau là :doute:

dnob700
dnob700
Niveau 10
08 janvier 2010 à 23:05:36

je ne pense pas que les tableau se redimmensionne automatiquement, où, s'ils le font, ça ne peut pas être avec la syntaxe que tu utilise this.items[this.items.length - 1] vu que tu lui donne l'indice de la dernière case déjà utilisé. Là, il faudrait bien utiliser this.items.length, mais j'imagine qu'il va planter. Il y a peut-être une méthode this.items.push_back qui existe ou quelque chose du genre (à noter que this partout est probablement inutile). Pour initialiser ton tableau string[] items = new string[] fonctionnera peut-être.

godrik
godrik
Niveau 30
08 janvier 2010 à 23:20:38

ce que OP veut n'est pas un tableau mais un vector.

_skip
_skip
Niveau 10
09 janvier 2010 à 09:32:15

Si je fais

String[] tab = new String[250];

J'ai bien un tableau de 250 chaînes, mais elles sont toutes initialisées à null.

là seule solution si on veut initialiser le tableau avec des chaînes vides au lieu de nulls, c'est une boucle :

for(int i = 0; i < tab.length; i++)
tab[i] = new String();

C'est valable pour tous les types non primitifs.

Pour ce qui est de la syntaxe PHP
tab[] = "bonjour";

Ca n'existe pas car ce qu'on appelle un tableau en PHP, en réalité c'est une structure de type Map et non un simple array.

En java, quand tu n'as pas moyen de savoir combien d'élément devra contenir le tableau et que tu souhaites qu'il adapte sa taille à la demande, l'idéal est d'utiliser un ArrayList.

isukthar
isukthar
Niveau 10
09 janvier 2010 à 14:41:21

Non, pour réserver le tableau de chaines tu fais:
String[] tab = new String[5];

Après, pour remplir, tu fais:
tab[0] = "Bonjour";
tab[1] = "salut";
...

TheMoskito
TheMoskito
Niveau 8
09 janvier 2010 à 17:50:37

ok merci pour votre aide.

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