private int Li_WtVal;
List <Integer> ValueList = new ArrayList<Integer>();
CsReader csReader = new CsReader();
public void setLi_WtVal(int li_WtVal) {
ValueList = csReader.GetAllcsValues();
li_WtVal = ValueList.get(0);
}
public int getLi_WtVal() {
return Li_WtVal;
}
}
而且我里面有一个while循环,我在调用setter和getter,但是evrytime它返回0。
public int CtrlWeight(String CodeLine) {
Scanner scanner = new Scanner(CodeLine);
int Li_Wtcs = 0;
while (scanner.hasNext()) {
token1 = scanner.next();
if (token1.contains("if")){
setLi_WtVal(Li_WtVal);
Li_Wtcs = Li_Wtcs + getLi_WtVal() ;
}
}
setter里面可以有其他类实例和对象引用吗?
您将值设置为参数而不是属性:
public void setLi_WtVal(int li_WtVal) {
ValueList = csReader.GetAllcsValues();
Li_WtVal= ValueList.get(0);
}
public int getLi_WtVal() {
return Li_WtVal;
我认为原因是因为您对变量的命名不正确