gpt4 book ai didi

Java 错误值可能已被分配

转载 作者:行者123 更新时间:2023-12-01 08:54:50 25 4
gpt4 key购买 nike

我想使用下面的代码来设置监听器数组

     public void setListeners() {
final int k ;
for (k=0; k<6; k++) {
mNumberView[k].addTextChangedListener(new TextWatcher() {
@Override

public void onTextChanged(CharSequence s, int start, int before, int count) {
mSprintHrs[k] = calcSprint(0, s);
String mSH = String.format("%.1f", mSprintHrs[k]);
mSprintView[k].setText(mSH);
calcTotal();
}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}

@Override
public void afterTextChanged(Editable s) {

}
});

我在 for 语句中的 k++ 上遇到编译器错误

 Value k might already been assigned to

有什么解决办法吗?

最佳答案

该错误是因为您尝试修改 final 变量。如果您需要访问匿名子类中的可变变量,则必须将其复制到 final 变量:

for (int i=0; i<6; i++) {
final int k = i;

一个可能更简洁的解决方法是将循环体提取到带有 final 参数的单独方法中。

关于Java 错误值可能已被分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42101374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com