外部放置错误

时间:2017-03-27 22:03:07

标签: java indexoutofboundsexception

它编译但是说我有一个索引越界错误,我不知道如何解决。

错误消息:

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0

感谢任何帮助,谢谢。这是我的代码的一部分:

        ArrayList<listy> list = new ArrayList<listy>();
        ArrayList<listy> list2 = new ArrayList<listy>();

        for (int a = 0; a < 5; a++) {

            for (int f = 0; f < list.size(); f++) {


        for (int i = 0; i < 10; i++) {
            //get listy         }

2 个答案:

答案 0 :(得分:1)

您正在从名为BattleBoats的类中运行main方法,而不是来自Battleship的主要方法。该错误是由于您调用ArrayList类的get()方法而不填充,因为堆栈跟踪中列表的大小为0。请提供BattleBoats的代码

答案 1 :(得分:1)

您没有初始化列表 但您在 for loop 中使用它来编写其值!

    for (int i = 0; i < 10; i++) {
        System.out.println(list.get(i).getRow() + " " + list.get(i).getCol());

将其更改为:

    for (int i = 0; i < list.size(); i++) {
        System.out.println(list.get(i).getRow() + " " + list.get(i).getCol());

你的Stacktrace指向一条get()消息,该消息被发送到main()方法中的空ArrayList(上面的循环)。