Taille maximale d'un tableau

Résolu
alonsyl Messages postés 348 Date d'inscription mardi 6 avril 2004 Statut Membre Dernière intervention 6 novembre 2008 - 15 oct. 2005 à 11:09
cs_artichaud Messages postés 36 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 2 février 2010 - 6 févr. 2008 à 15:34
bonjour,

j'ai cru comprendre que la taille d'un tableau doit etre specifiee comme etant un entier :
int capa = 5;
double[] montab = new double[capa];
j'en deduis donc qu'il existe une taille maximale a mon tableau : 2147483467
ai-je raison ?

merci a vous,

alonsyl
A voir également:

2 réponses

cs_artichaud Messages postés 36 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 2 février 2010 1
6 févr. 2008 à 15:34
hello
la taille d'un double est de 8octets, soit 64bits, la taille d'un tableau est-elle de n*64 (n étant le nombre de doubles) ou d'avantage? qu'entends-tu par d'avantage de ressources pour un vector (et c'est quoi cette histoire de synchronisation?)? et dans le cas d'un linkedlist?
dans une barette de 512Mb, je ne pourrais dans tous les cas pas avoir un tableau de plus de 8.000.000 de double, ou 16.000.000 de float, c'est bien cela?
1
kaloway Messages postés 358 Date d'inscription jeudi 24 octobre 2002 Statut Membre Dernière intervention 13 avril 2020
15 oct. 2005 à 13:03
apparement, oui, car lentgh renvoie un entier.

dans ton exemple ton tableau est limité à 5.

les tableaux de taille fixe sont bien lorsque l'on connait le nombre
d'élèment. il est préférable d'utiliser des tableaux dynamiques comme
les arraylist ou les vector ou encore les linkedlist.

les arraylist n'ont pas detaille fixe, donc tu peux supprimer, ajouter
des élèments en cours d'éxécution. les vector sont identique au
arraylist mais sont synchronisés donc plus gourmand en resource. les
linkedlist sont doublement chainé donc parcouru par itérateur dans
les deux sens alors que les vector et les araylist sont
simplement chainé.
-1
Rejoignez-nous