在Java中查找字符数组大小时出错

在Java中查找字符数组大小时出错,java,arrays,Java,Arrays,我刚刚开始使用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[] =

我刚刚开始使用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

都在第三行。为什么会这样?还有其他方法可以找到字符数组的长度吗?

这里需要赋值,如:

char compHidden[] = new char[comp.length];

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"};


char WORDS[][]
应该是
String WORDS[]
在Java中,
char[]
String
不同。与C样式字符串不同,Java中的字符序列并不表示字符数组。另外,最后一行不是有效的Java。必须在右侧使用
new
指定数组的长度,如
char[]compHidden=new char[comp.length]
@subrajyotimajumder注意,在更正的示例中,数组声明为
String[]
String WORDS[] = {"jazz", "buzz", "hajj", "fuzz", "jinx", "jazzy", "fuzzy", "faffs", "fizzy", "jiffs", "jazzed", "buzzed", "jazzes", "faffed", "fizzed", "jazzing", "buzzing", "jazzier", "faffing", "fuzzing"};