Boojour,
Je suis un débutant en Java et souhaiterais savoir qu'elle est la différence entre .length et .length() ?
C'est-à-dire quand est-ce qu'on utilise .length sans () et quand est-ce qu'on l'utilise avec.
Merci d'avance pour votre aide.
Boojour,
Je suis un débutant en Java et souhaiterais savoir qu'elle est la différence entre .length et .length() ?
C'est-à-dire quand est-ce qu'on utilise .length sans () et quand est-ce qu'on l'utilise avec.
Merci d'avance pour votre aide.
Bonjour
Une explication pas l'exemple.
char[] unTableau ==> dans ce cas c'est lenght
String uneString ==> dans ce cas c'est lenght()
dans le premier cas, c'est un tableau , donc pas de parenthèses
dans le deuxième cas, c'est une méthode de la classe String
Page sur Developpez : http://pbriand.developpez.com
Le .length est surtout une propriété.
Par contre, le length() est une méthode. Donc retourne une valeur, celle-ci peut-être calculer ou non.
En général, une seul de ces deux options est accessibles. (Pas de méthode sur les type tableaux)
A noté qu'on a aussi le size() !
Si tu veux être sûr de celui à utiliser. Je te conseil la javadoc.
Cordialement,
K
Si une réponse vous a été utile pensez à![]()
Si vous avez eu la réponse à votre question, marquez votre discussion
Pensez aux FAQs et aux tutoriels et cours.
Quand c'est celui-là qui marche.
Avec les tableaux c'est .length, la propriété, et donc si tu essaies .length() la méthode, ça ne compilera pas.
Avec les String c'est .length(), la méthode, et donc si tu essaies .length la propriété, ça ne compilera pas.
=> Utiliser celui qui compile. Un peu dommage que les deux existent, mais c'est pas plus compliqué que ça.
Bonjour ce qui explique l’utilisation de length ou length(), dans un tableau et dans un String c'est que Strings utiliser des tableaux en interne. Si des chaînes serait également utiliser un champ pour stocker leur longueur, les informations seraient effectivement dupliqué - une fois dans le tableau lui-même, et une fois dans les champs de la chaîne.
autre chose qu'il faut savoir c'est que la taille des tableaux dans java est immuable.
Euh. En interne les String ont bel et bien un champ de ce genre, qui est renvoyé par length().
C'est effectivement une info dupliquée quand la String est à base de tableau nouvellement créé pour elle.
Mais certaines String sont définies comme sous-String d'autres String et réutilisent le même tableau, avec un indice de départ et une longueur différents. Dans ce cas-là ce n'est pas dupliqué.
On peut pas vraiment dire que ça explique le choix d'une méthode plutôt que juste un attribut. Disons que l'emploi d'une méthode fait plus "objet".
Oui... Les String sont immutables aussi, pas seulement leur taille, mais leur contenu aussi.
@thelvin
je suis d'accord avec vous les Strings sont immuables, ça je discute pas,Oui... Les String sont immutables aussi, pas seulement leur taille, mais leur contenu aussi.
ce que je veux dire par contre c'est que la taille= size d'un tableau une fois crée est immuable, et que le contenu peux changer par exemple t[0]="XX".
Partager