【发布时间】:2017-02-07 22:40:26
【问题描述】:
我想使用下面的代码来设置一个监听器数组
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? -
编译器希望它为内部循环中的 k 完成 (mSprintHrs[k])