【发布时间】:2018-12-29 12:10:41
【问题描述】:
我有一个函数,我使用了一个全局变量,在这个函数中我更新了这个变量。我不想在这个函数之外更新这个变量的值。
public static int a = 0; //is global
public static int b = 0;
public void func(){
if(a>c){
a=a+b;
}
}
这个函数在 100ms 时被调用
final Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
func();
handler.postDelayed(this, 100);
}
};
handler.postDelayed(runnable, 100);
为什么“a”每次都以零开头?
我想做这样的事情:
public void func(){
int a=0;
int b=0;
while(a>c){
a=a+b;
}
}
但我不能使用while,因为“c”是在另一个函数中计算的,如果我使用while,“c”的值不会改变......
我该如何解决这个问题?
【问题讨论】:
标签: android function initialization global-variables