package javaapplication31;
public class JavaApplication31 {
public static void main(String[] args) {
QiuheThread q[]=new QiuheThread[5];
for(int i=0;i<5;i++)
{
q[i]=new QiuheThread(i);
q[i].start();
}
int he=q[0].sum+q[1].sum+q[2].sum+q[3].sum+q[4].sum;
System.out.print("1-100求和为:"+he+"\n");
}
}
class QiuheThread extends Thread
{
int index;
int sum;
public QiuheThread(int nindex)
{
index=nindex;
}
public void run()
{
synchronized(this)
{
for(int i=0;i<20;i++)
{
sum+=index*20+i+1;
}
}
}
}```
代码如上,但并没有上锁成功,还是多线程同时运行?应该怎么改!🙏
对结果的写入进行上锁