今天学的方法,做作业的时候遇到了一个问题。
为什么我把数组创建到main函数外面,就会报错呢?
public class TestBooks {
public static void main(String[] args) {
Books[] books = new Books[3];
for (int i = 0; i < books.length; i++) {
books[i] = new Books();
books[i].setId(i + 1);
}
books[0].setName("java");
books[0].setPrice(110.5);
books[0].setNumber(0);
books[1].setName("abcd");
books[1].setPrice(10.5);
books[1].setNumber(0);
books[2].setName("JDBC");
books[2].setPrice(12.5);
books[2].setNumber(0);
for (int i = 0; i < books.length; i++) {
System.out.println(books[i].getId() + "\t" + books[i].getName() +
"\t" + books[i].getPrice() + "\t" + books[i].getNumber());
}
Scanner sc = new Scanner(System.in);
System.out.println("请输入图书的编号:");
int choice = sc.nextInt();
}
public class TestBooks {
Books[] books = new Books[3];
public static void main(String[] args) {
for (int i = 0; i < books.length; i++) {
books[i] = new Books();
books[i].setId(i + 1);
}
books[0].setName("java");
books[0].setPrice(110.5);
books[0].setNumber(0);
books[1].setName("abcd");
books[1].setPrice(10.5);
books[1].setNumber(0);
books[2].setName("JDBC");
books[2].setPrice(12.5);
books[2].setNumber(0);
for (int i = 0; i < books.length; i++) {
System.out.println(books[i].getId() + "\t" + books[i].getName() +
"\t" + books[i].getPrice() + "\t" + books[i].getNumber());
}
Scanner sc = new Scanner(System.in);
System.out.println("请输入图书的编号:");
int choice = sc.nextInt();
}