我正试图创造这样的东西......
Class WordStore {
private int size;
private String words[];
public WordStore(int n) {
size=n;
words[]=new String[size];
}
...
}
所以我可以将单词作为全局变量,能够从类中的任何方法访问它,而不必将其作为参数传递。数组字的长度必须是传递给构造函数的int值,该构造函数从另一个类传递。 它必须是一个数组,而不是ArrayList或任何其他列表。
但是目前它没有编译,我需要进行哪些更正才能允许编译。
答案 0 :(得分:1)
words[]=new String[size];
应该是这样的words=new String[n];
答案 1 :(得分:1)
这应该足够了
private int size;
private String words[];
public WordStore(int n){
words =new String[n];
}
如果您不需要尺寸为全球
答案 2 :(得分:1)
正如其他回答者所说,你应该替换
带有words[]=new String[size];
的 words=new String[n];
这是因为[]是变量类型的一部分,而不是它的名称。这种混淆是可以理解的,因为在声明变量时,是否将[]与其余类型或名称放在一起是可选的。因此,通常将数组类型的变量声明为
private String[] words; //type: String[] name: words
而非非标准
private String words[]; //still type: String[] name: words, but less clear
一旦你这样做,一切都变得更加一致,你在使用变量时不会重复String类型,所以你也不要重复[]。
此外,Class应该是class,因为java中的关键字是小写