-2

我有个问题。我正在为带有鱼的生态系统编写代码,并且正在尝试将新的 Fish 对象添加到现有的鱼 ArrayList 中。但是,当我检查 ArrayList 它原来是空的?想法?

public void addFish(Fish f){
    ArrayList<Fish> fishplusone = new ArrayList<Fish>(fish.size());
    if (landscape[f.getRow()][f.getCol()] != ROCK) {
        for (Fish otherfish: this.fish) {
                if(otherfish.getRow() == f.getRow() && otherfish.getCol() == f.getCol()) {
                    throw new IllegalFishPositionException(IllegalFishPositionException.TWO_FISH_IN_ONE_PLACE); 

                }
                else {
                    fishplusone.add(otherfish); 
                    }
                fishplusone.add(f);
                fish = fishplusone;
                }

            }
4

1 回答 1

0

每次创建一个新的 ArrayList:ArrayList<Fish> fishplusone = new ArrayList<Fish>(fish.size());

首先进行检查然后将其添加到现有列表中不是更容易吗?

于 2013-05-04T17:24:21.863 回答