web-dev-qa-db-ja.com

byte []配列の長さ

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

私は次のループを作りたい

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

bは配列の各バイトを格納しますが、配列の長さを正しく取得できないようです。

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

使用する bytes.lengthなし()

45
Brian Vanover

JLS-10.7。配列メンバー を参照してください:

配列型のメンバーはすべて次のとおりです。

public final field length。配列のコンポーネントの数が含まれます。長さは正またはゼロです。

lengthプロパティであり、メソッドではありません。あなたは書くべきです:

bytes.length
7
Maroun

bytes.length()ではなく、bytes.length

0
Sabuj Hassan

配列の長さを取得するには、lengthを使用します。例えば:

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

文字列の長さを取得するには、length()を使用します。例えば:

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

getBytes()プラットフォームのデフォルトの文字セットを使用して文字列をバイトシーケンスにエンコードし、結果を新しいバイト配列に格納します。

元の文字列と比較して長さが異なるエンコードされた値が表示されるバイトを印刷してみてください。

0
Sudz