Probleme avec un tableau de classe

Résolu
Belette32 Messages postés 57 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 22 novembre 2007 - 19 août 2007 à 21:12
the_wwt Messages postés 177 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 16 janvier 2009 - 20 août 2007 à 12:06
Bonjour à tous, voila, j'aimerais utiliser une structure appelée Voiture sous forme de tableau.
Voici mon code :

Public void init()
{

class Voiture
{
int nombre=0;
}

Voiture v[]=new Voiture[10];
v[0].nombre=0;
}

Le code s'arrète sur "v[0].nombre=0;" en me disant null pointeur exception.
J'ai essayé de mettre ma classe voiture partout mais rien n'y fait.
Merci d'avance, Belette32

8 réponses

the_wwt Messages postés 177 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 16 janvier 2009 1
20 août 2007 à 09:58
Bonjour,
euh je crois que vous confondez un peu tout...
Là avec la ligne :
Voiture v[]=new Voiture[10];

Tu crées un tableau de dix éléments qui contient des références vers des objets.
Mais tu n'as pas créé d'objets...
Maintenant tu dois faire:

v[0] = new Voiture();

La case du tableau à l'index 0 contient à présent la référence vers l'objet instancié.
Tu peux donc faire
v[0].
.nombre=0;

J'espère que tu as compris, sinon lis les docs sur le langage Objet et java.
Cordialement,
Pierrick
3
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
20 août 2007 à 06:52
Un tableau de 10 éléments contient... 10 éléments... normal non ?

Donc la case voiture[10] n'existe pas vu que les tableaux commencent à la case 0 !
0
the_wwt Messages postés 177 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 16 janvier 2009 1
20 août 2007 à 10:01
Entre nous Darksidious tu es admin mais t'y connais rien en java...
-->Donc la case voiture[10] n'existe pas vu que les tableaux commencent à la case 0 !
La il crée un tableau de dix éléments, il n'y accède pas. sic.
Cdlt,
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
20 août 2007 à 11:01
lol the_wwt, je ne tiendrais pas compte de ta remarque concernant mes connaissances en java, je pense que je n'ai plus de preuve à donner concernant ces dernières, tu n'as qu'à aller voir mes contributions... je n'ai pas la prétention de dire que je suis expert en java, mais je pense que j'ai assez de connaissances pour répondre à cette question tout de même !

T'a tout à fait raison, j'ai mal lu, je croyais avoir vu v[10].nombre=0, d'où ma réponse. Au temps pour moi !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Belette32 Messages postés 57 Date d'inscription mercredi 14 septembre 2005 Statut Membre Dernière intervention 22 novembre 2007
20 août 2007 à 11:26
Merci de vos réponses. Je pensais que l'on pouvait créer des tableaux d'objet comme un tableau d'entier (int[]). Je ne suis pas très fort et je n'aime pas trop embéter les gens avec des problèmes simples pour vous, mais la, je ne savais pas si c'était possible. Encore merci pour vos réponses et explications.


Belette32
0
Twinuts Messages postés 5373 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 10 août 2022 111
20 août 2007 à 11:37
Salut,

[auteurdetail.aspx?ID= 13557 DARKSIDIOUS] ->  Tu t'es encore fait un admirateur ^^
[auteurdetail.aspx?ID=579177 Belette32]
-> Tu n'embêtes personne avec ta question bien au contraire... sans les questions le forum n'a pas d'interet
[auteurdetail.aspx?ID =875433 the_wwt]
-> Rien à dire toujours fidèle à toi même, ho grand gourou du developpement

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
20 août 2007 à 11:47
>> twinuts : Et oui, ca commence à en faire ! Et c'est rien comparé à VBFrance, je te rassure N'est pas dark qui veut

>> belette32 : un tableau d'entier est un tableau de type primitif qui n'ont pas besoin d'être instanciés. Un tableau d'objets par contre est un tableau d'objets : il sait qu'il stockera des objets de tel type, mais il ne peut pas les instancier à ta place (surtout quand tu y rajoute de l'héritage !). Donc c'est à toi de le faire manuellement.
0
the_wwt Messages postés 177 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 16 janvier 2009 1
20 août 2007 à 12:06
Bonjour à tous,
[auteurdetail.aspx?ID=13557 DARKSIDIOUS] -> cette attaque en règle de ma part n'est là que pour montrer que même les meilleurs font des erreurs... Ne pas en tenir compte montre que tu n'est pas si dark.
A noter que contre deux admins je fais profils bas, je suis fan de codes-sources.
[auteurdetail.aspx?ID=43739 Twinuts] -> J'apprecie toujours autant tes compliments, merci. sic.
[auteurdetail.aspx?ID=579177 Belette32] -> Content d'avoir pu t'éclairer.
Bonne journée à tous.
0