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()
Utilisez bytes.length
sans le ()
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
Ce n'est pas bytes.length()
, son bytes.length
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();
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.