java - 具有类实例的 Setter 这可能吗?
问题描述
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;
我认为原因是因为您对变量的命名很糟糕。
看起来你的代码也没什么用。
推荐阅读
- keyboard - 当我在 SwiftUI 中点击它时,TextField 的键盘不显示
- html - :hover 问题
- python - Gekko 找不到小问题的解决方案
- javascript - 在这种特殊情况下(通过共享调用),Javascript 会发生什么?
- ios - ASWebAuthenticationSession/SFAuthenticationSession中callbackURLScheme的作用是什么?
- java - java华氏到摄氏度,反之亦然转换器在jframe中
- web - 我将tailwindCSS 用于一个简单的html 站点,但在netlify 上部署不起作用,为什么?
- powershell - Powershell 更改文本
- sql - 在这样的表 R(ABCDE) 上,我需要一个 SQL 触发器,以防止元组的 A 和 B 列相同但尝试为 C 赋予不同的值
- css - 创建三个单独按钮的垂直堆栈