问答详情
源自:6-5 使用循环操作 Java 中的数组

代码没有提示错误,但是却运行不了

class Hobbits {
		String name;
		public static void main(String [] args) {
		Hobbits [] h = new Hobbits[3];
		int z = 0;
		while (z < 4) {
		z = z + 1;
		h[z] = new Hobbits();
		h[z].name = "bilbo";
		if (z == 1) {
		h[z].name = "frodo";
		}
		if (z == 2) {
		h[z].name = "sam";
		}
		System.out.print(h[z].name + " is a ");
		System.out.println("good Hobbit name");
		}
		}
		}

这个到底是什么原因呢?

提问者:差不多先生1234 2016-05-02 09:27

个回答

  • 0xCA
    2016-05-02 12:23:37
    已采纳

    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3

    这个错误是数组长度越界了,改成 while(x < 3)