我想在10个线程并发Java线程上从一个运行一个简单的总和到上限功能。我目前的主要问题是放置upperBound,lowerBound,sum和i的变量。我想捕捉我变量更新总和计算,但我得到的错误“局部变量需要宣布最终。”我是Java的初学者,但从我读过的关于声明变量final的内容来看,它是否使变量无法修改 - 不是我的目标......对吧?变量放置的Java线程问题
public class threads {
public static void main(String[] args) {
System.out.println(Thread.currentThread().getName());
for(int i = 0; i < 10; i++) {
new Thread("" + i) {
public void run() {
int sum = 0;
int upperBound = 22;
int lowerBound = 1;
long threadID = Thread.currentThread().getId();
for (int number = lowerBound; number <= upperBound; number++){
sum = sum + number + i;
}
System.out.println("Thread: " + threadID + " is running now and will compute the sum from 1 to " + (upperBound + i));
System.out.println("Thread id " + threadID + " computes sum " + sum);
}
}.start();
}
}
}