Can';t分配给数组I';我创造了java
我是java的初学者,我正在尝试使用我创建的数组 但它不停地重复它。 有人知道我在这里错过了什么吗 更具体地说,命令Can';t分配给数组I';我创造了java,java,Java,我是java的初学者,我正在尝试使用我创建的数组 但它不停地重复它。 有人知道我在这里错过了什么吗 更具体地说,命令bookArray.length产生了此错误 Library(int maxBookCapacity){ Book bookArray[]= new Book[libraryMaxBookCapacity]; } boolean inLibrary(Book book){ for(int i=0; i<bookArray.length; i++ ){
bookArray.length
产生了此错误
Library(int maxBookCapacity){
Book bookArray[]= new Book[libraryMaxBookCapacity];
}
boolean inLibrary(Book book){
for(int i=0; i<bookArray.length; i++ ){
if (book==bookArray[i]){
return true;
}
}
return false;
}
库(int maxBookCapacity){
Book bookArray[]=新书[libraryMaxBookCapacity];
}
布尔函数库(书){
for(int i=0;ibookArray
是一个局部变量,不能在定义方法之外访问。实际上,局部的意思是:名称bookArray
仅在构造函数内部可用
如果在库中需要它,则应在封闭类中将其声明为字段:
public class Library {
private final Book[] bookArray;
public Library(int maxBookCapacity){
bookArray = new Book[libraryMaxBookCapacity];
}
public boolean inLibrary(Book book){
for(int i = 0; i < bookArray.length; i++ ){
if (book == bookArray[i]){
return true;
}
}
return false;
}
}
公共类库{
私人最终书籍[]书籍阵列;
公共图书馆(国际maxBookCapacity){
bookArray=新书[libraryMaxBookCapacity];
}
公共图书馆(图书){
for(int i=0;i
顺便问一下,如果你真的需要把书对象与<代码> > =代码> >运算符> < /p> <代码> / /如果你在构造函数中声明它,它将是一个局部变量,没有人可以访问它。
// If you declare this within the constructor, it'll be a local variable and nobody can access it.
// Having it here means that inLibrary can see it
private Book[] bookArray;
Library(int maxBookCapacity){
// watch out here, in your code you have a different var from the parameter of the constructor
bookArray= new Book[maxBookCapacity];
}
boolean inLibrary(Book book){
for(int i=0; i<bookArray.length; i++ ){
if (book==bookArray[i]){
return true;
}
}
return false;
}
//放在这里意味着图书馆可以看到它
私人书籍[]书籍阵列;
图书馆(国际maxBookCapacity){
//注意这里,在代码中有一个与构造函数参数不同的var
bookArray=新书[maxBookCapacity];
}
布尔函数库(书){
对于(int i=0;i