我宣布了一个全局ArrayList
list
,目的是在方法中添加float
变量:
ArrayList<Float[]> list = new ArrayList<Float[]>();
以下是方法:
public void recieve(float[] coords)
{
this.list.add(?);
}
将coords
添加到ArrayList
的语法是什么?
答案 0 :(得分:4)
我认为你必须手动转换它。
public void recieve(float[] coords) {
this.list.add(convertToFloat(coords));
}
public Float[] convertToFloat(float[] coords) {
Float[] converted = new Float[coords.length];
for (int i = 0; i < coords.length; i++) {
converted[i] = Float.valueOf(coords[i]));
}
return converted;
}
答案 1 :(得分:2)
您正在寻找:
public void receive(float[] coords) { // fixed misspelling in name
Float[] fCoords = new Float[coords.length];
for (int i = 0; i < coords.length; i++)
fCoords[i] = coords[i]; // autoboxing takes place here
this.list.add(fCoords);
}
由于ArrayList
需要Float[]
,但您有float[]
作为参数(注意字母大小写的差异!),在将其添加到列表之前需要进行手动转换。
答案 2 :(得分:0)
由于您将Arraylist类型声明为float数组,我相信您可以使用
list.add(coords);
干杯