0

私はJavaを始めたばかりで、なぜこのコードなのか理解できません:

char WORDS[][] = {"jazz", "buzz", "hajj", "fuzz", "jinx", "jazzy", "fuzzy", "faffs", "fizzy", "jiffs", "jazzed", "buzzed", "jazzes", "faffed", "fizzed", "jazzing", "buzzing", "jazzier", "faffing", "fuzzing"};
char comp[] = WORDS[rand.nextInt(WORDS.length)];
char compHidden[comp.length];

次のエラーが発生します。

- Syntax error on token "[", = expected
- Type mismatch: cannot convert from int 
 to char
- Syntax error on token "]", delete this 
 token

すべて 3 行目にあります。どうしてこれなの?char 配列の長さを調べる別の方法はありますか?

4

2 に答える 2

0

ここでは、次のような割り当てが必要です。

char compHidden[] = new char[comp.length];
于 2013-05-06T08:42:53.453 に答える
0

WORDS配列は多次元配列としてインスタンス化されるのではなく、通常の配列としてインスタンス化されるため、そのようchar[]に宣言する必要があります。また、配列のタイプはではなく、割り当てられた配列のタイプを指定するchar[]必要があります。String[]

変化する:

char WORDS[][] = {"jazz", "buzz", "hajj", "fuzz", "jinx", "jazzy", "fuzzy", "faffs", "fizzy", "jiffs", "jazzed", "buzzed", "jazzes", "faffed", "fizzed", "jazzing", "buzzing", "jazzier", "faffing", "fuzzing"};

String WORDS[] = {"jazz", "buzz", "hajj", "fuzz", "jinx", "jazzy", "fuzzy", "faffs", "fizzy", "jiffs", "jazzed", "buzzed", "jazzes", "faffed", "fizzed", "jazzing", "buzzing", "jazzier", "faffing", "fuzzing"};
于 2013-05-06T08:44:40.983 に答える