Longueur du tableau en Java


, j'ai déclaré un tableau comme indiqué ci-dessous:

int[] arr = new int[10];

Ensuite, j'ai affecté les valeurs suivantes au tableau:

arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;

Puis j'ai déclaré et initialisé une variable entière:

int arrayLength = arr.length;

Cela sera utile pour trouver la taille réelle mais existe-t-il une méthode pour trouver la taille logique du tableau?

Author: Community, 2012-01-06

13 answers

, Il contient la taille allouée, 10. Les index non affectés contiendront la valeur par défaut qui est 0 pour int.

 60
Author: Kai, 2018-04-23 05:17:18

Tout d'Abord, length est une propriété, de sorte qu'il serait arr.length au lieu de arr.length().

Et il retournera 10, la taille déclarée. Les éléments que vous ne déclarez pas explicitement sont initialisés avec 0.

 46
Author: Costi Ciudatu, 2013-07-23 19:06:04

Pour trouver la longueur d'un tableau A vous devez utiliser le length la propriété. C'est comme A.length, n'utilisez pas A.length() c'est principalement utilisé pour la taille des objets liés à la chaîne.

entrez la description de l'image ici

La propriété length affiche toujours l'espace total alloué au tableau lors de l'initialisation.

Si jamais vous avez un de ces types de problèmes, le moyen le plus simple est de l'exécuter. Bonne programmation!

 15
Author: Ravi Pandey, 2018-04-23 05:29:01

Les tableaux sont une allocation de mémoire statique, donc si vous initialisez un tableau d'entiers:

int[] intArray = new int[15];

La longueur sera toujours 15, peu importe le nombre d'index remplis.

Et une autre chose, lorsque vous initialisez un tableau d'entiers, tous les index seront remplis avec "0".

 5
Author: Ramon Saraiva, 2012-01-06 09:43:53

Dans ce cas, arr.length renverra 10, la taille du tableau que vous avez alloué. La taille logique ne s'applique pas vraiment ici, car il s'agit d'un tableau de longueur fixe.

Lorsque vous initialisez le tableau:

int[] arr = new int[10];

Java va créer un tableau avec 10 éléments et initialiser tous ceux-ci à 0. Voir le Java language spec pour plus de détails sur les valeurs initiales pour ce type et d'autres types primitifs.

 5
Author: Tom Elliott, 2012-01-06 09:44:11

En Java, votre taille "réelle" et "logique" sont les mêmes. L'exécution remplit tous les emplacements de tableau avec des valeurs par défaut lors de l'allocation. Donc, votre a contient 10.

 4
Author: Dirk, 2012-01-06 09:34:55

`

Int tableau[]=new int[3]; array.longueur;

Nous avons donc créé ici un tableau avec un espace mémoire de 3... voici à quoi cela ressemble en fait

0e 1e 2e ...........> Index 2 4 5 ...........> Nombre

Donc, comme vous le voyez, la taille de ce tableau est de 3 mais l'index du tableau n'est que de 2 car tout tableau commence par 0th index.

La sortie de la deuxième instruction doit être 3 puisque la longueur du tableau est 3... S'il vous plait ne soyez pas confus entre la valeur de l'index et la longueur du tableau....

Santé!

 3
Author: Ayush Murty A H, 2016-01-07 15:40:15

Il devrait être:

int a = arr.length;

Les parenthèses doivent être évitées.

 2
Author: Godlu, 2018-04-23 05:26:52

, Il contiendra la taille réelle du tableau, comme c'est ce que vous avez initialisé le tableau lorsque vous déclaré. Java n'a aucun concept de la taille "logique" d'un tableau, en ce qui concerne la valeur par défaut de 0 est tout aussi logique que les valeurs que vous avez définies manuellement.

 1
Author: Turix, 2012-01-06 09:55:53

Il contient la taille allouée, 10. Les index restants contiendront la valeur par défaut qui est 0.

 1
Author: Nikhil Kumar, 2015-04-20 08:05:36

Si vous voulez la taille logique du tableau, vous pouvez parcourir toutes les valeurs du tableau et les vérifier par rapport à zéro. Incrémenter la valeur si elle n'est pas nulle et que serait la taille logique. Parce que la taille du tableau est fixe, vous n'avez aucune méthode intégrée, vous devriez peut-être jeter un oeil aux collections.

 1
Author: Struse, 2016-01-01 22:24:27

Les tableaux Java sont en fait de taille fixe, et les autres réponses expliquent comment .la longueur ne fait pas vraiment ce que vous attendez. Je voudrais juste ajouter que compte tenu de votre question, ce que vous voudrez peut-être utiliser est une ArrayList, c'est-à-dire un tableau qui peut croître et rétrécir:

Https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html

Ici le .méthode size() va vous montrer le nombre d'éléments dans votre liste, et vous pouvez vous développer ce que vous ajoutez des choses.

 0
Author: draxil, 2018-06-27 11:05:07

Si vous entendez par "taille logique", l'index du tableau, alors simplement int arrayLength = arr.longueur-1; étant donné que l'index du tableau commence par "0", l'index logique ou "tableau" sera toujours inférieur à la taille réelle de "un".

 0
Author: Salah, 2018-10-06 05:29:04