我正在编写一个void方法,需要在我的对象part0中更改stocklevel的值。但是,当我尝试编写逻辑时出现错误。
AssembledStockLevel
public int calculateAvailForAssembly(){
if(basica.getStockLevel() <= basicb.getStockLevel()){
assembledstocklevel = basica.getStockLevel();
} else { assembledstocklevel = basicb.getStockLevel();
}
return assembledstocklevel;
}
代码显示错误
public void changeStockLevel(){
if(assembledstocklevel <= basica.getStockLevel()){
[Error is here -->]basica.getStockLevel() = basica.getStockLevel() - assembledstocklevel;
}
}
错误表示赋值的左侧必须是变量??
basica是我用来引用part0对象的变量
答案 0 :(得分:2)
basica.getStockLevel()
返回对值的引用。您无法为该引用分配任何内容。您应该有一个库存水平的setter方法,并使用它来更新其值。
类似的东西:
basica.setStockLevel(basica.getStockLevel() - assembledstocklevel)
答案 1 :(得分:2)
您正在使用引用来设置值,请使用setter方法。
basica.setStockLevel(basica.getStockLevel() - assembledstocklevel);
答案 2 :(得分:1)
您无法为方法分配任何内容。您已通过以下方式设置了setter方法:
callbacks