web-dev-qa-db-fra.com

Longueur du tableau d'octets []

String str = "123456789";
byte[] bytes = str.getBytes();

Je veux faire la boucle suivante

for (int j = 0; j < bytes.length(); j++) {
  b = bytes[j];
}

b stockera chaque octet de mon tableau, mais je n'arrive pas à obtenir la longueur du tableau correctement.

Error:cannot find symbol
Problem solved:  bytes.length instead of  bytes.length()
11
user3383062

Utilisez bytes.length sans le ()

39
Brian Vanover

Voir le JLS - 10.7. Membres du tableau :

Les membres d'un type de tableau sont tous les suivants:

Le public final field length, qui contient le nombre de composants du tableau. la longueur peut être positive ou nulle.

length est un property, pas une méthode. Vous devriez écrire:

bytes.length
7
Maroun

Ce n'est pas bytes.length(), son bytes.length

0
Sabuj Hassan

Pour obtenir la longueur d'un tableau, utilisez length. Par exemple:

int[] arr = {1,2,3};
int length = arr.length;

Pour obtenir la longueur d'une chaîne, utilisez length(). Par exemple:

String str = "123";
int length = str.length();
0
barak manos

getBytes () Encode la chaîne en une séquence d'octets à l'aide du jeu de caractères par défaut de la plate-forme, stockant le résultat dans un nouveau tableau d'octets.

Essayez d’imprimer les octets, vous verrez les valeurs encodées dont la longueur peut différer de celle de la chaîne originale.

0
Sudz