public class example
{
public ArrayList<Integer> ToFill = new ArrayList<>();
public void Alter(int Value , int Position)
{
ToFill.get(Position) = Value ; // this line has an error
}
}
由于某些原因,这段代码会产生编译错误,有人可以解释原因吗?
答案 0 :(得分:8)
ToFill.get(Position)
返回一个值,其中赋值的左侧必须是变量。相反,请使用set(index, element)
,如下所示:
ToFill.set(Position, Value);
但是,您所做的只有在使用数组时才有效,例如:
Integer[] array = ...
array[Position] = Value;
作为旁注,请始终使用Java命名约定:
toFill
代替ToFill
alter
代替Alter
position
代替Position
。value
代替Value
。