gpt4 book ai didi

java - 添加到数组列表

转载 作者:行者123 更新时间:2023-12-01 18:36:00 25 4
gpt4 key购买 nike

当我尝试添加到数组列表(纵梁)时,出现此错误:

error: no suitable method found for add(Fish)
stringer.add(f);

在此代码中:

public class Habitat {

ArrayList<String> stringer = new ArrayList<String>();
int[] fishArr;
public int maxCount=25;
public int minCount=9;
public int maxWeight=10;
public int minWeight=1;
public int catchProbability=30; //0.3

public int[] stockUp(){
int numofF = minCount + (int)(Math.random() * ((maxCount - minCount) + 1));
for(int i = 0; i<numofF; i++){
fishArr[i] = minWeight + (int)(Math.random() * ((maxWeight - minWeight) + 1));
}
return fishArr;
}


public Habitat(){
int[] hab;
}

public void addFish(Fish f) {
stringer.add(f);
}

public void removeFish(Fish f){
stringer.remove(f);
}

public void printFish(){
System.out.println(stringer);
}
}

删除工作正常,所以我不明白为什么添加不起作用。我希望问题得到解释,这样我就不会再犯同样的错误。

最佳答案

您已声明 List这样它就期待 String仅值,但您试图添加 Fish反对它...

这违反了您与 ArrayList 签订的契约(Contract)

尝试使用ArrayList<Fish> stringer = new ArrayList<Fish>();相反

看看Generics了解更多详情

关于java - 添加到数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21978005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com