用jva编写4个线程,第一个线程从1加到25,第二个线程从26加到50,第三个线程从51加到75,第四个线程从76加到100,最后再把四个线程计算的结果相加。
时间: 2023-08-05 09:35:13 浏览: 107
好的,我可以为您编写这个程序。下面是代码:
```java
public class Main {
public static void main(String[] args) throws InterruptedException {
SumThread[] threads = new SumThread[4];
int start = 1, end = 25;
// 创建4个线程,每个线程计算一段范围内的和
for (int i = 0; i < 4; i++) {
threads[i] = new SumThread(start, end);
start += 25;
end += 25;
}
// 启动4个线程
for (int i = 0; i < 4; i++) {
threads[i].start();
}
// 等待4个线程执行完毕
for (int i = 0; i < 4; i++) {
threads[i].join();
}
// 计算4个线程的结果相加的总和
int sum = 0;
for (int i = 0; i < 4; i++) {
sum += threads[i].getResult();
}
System.out.println("1到100的和为:" + sum);
}
}
class SumThread extends Thread {
private int start, end, result;
public SumThread(int start, int end) {
this.start = start;
this.end = end;
}
public void run() {
// 计算指定范围内的和
for (int i = start; i <= end; i++) {
result += i;
}
}
public int getResult() {
return result;
}
}
```
在这个程序中,我们创建了4个线程,每个线程计算一段范围内的和。然后启动这4个线程,等待它们执行完毕,最后将它们的结果相加得到总和。
阅读全文