7-2 试试多线程

编写4个线程,第一个线程从1加到25,第二个线程从26加到50,第三个线程从51加到75,第四个线程从76加到100,最后再把四个线程计算的结果相加。

输入格式:

输出格式:

最终结果

输入样例:

复制代码

输出样例:

复制代码
5050

代码

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        SumOfRange s1 = new SumOfRange(1,25);
        SumOfRange s2 = new SumOfRange(26,50);
        SumOfRange s3 = new SumOfRange(51,75);
        SumOfRange s4 = new SumOfRange(76,100);

        s1.start();
        s2.start();
        s3.start();
        s4.start();

        try {
            s1.join();
            s2.join();
            s3.join();
            s4.join();

        } catch (InterruptedException e) {
            throw new RuntimeException(e);
        }

        System.out.println(SumOfRange.sum);
            }
        }

class SumOfRange extends Thread {
    private int start;
    private int end;
    public static int sum;

    public SumOfRange(int start, int end) {
        this.start = start;
        this.end = end;
    }

    @Override
    public void run() {
        for(int i=start;i<=end;i++) {
            sum+=i;
        }
    }
}
相关推荐
ting94520002 分钟前
动手学深度学习(PyTorch版)深度详解(10): 优化算法 全解
人工智能·pytorch·深度学习·算法
rOuN STAT4 分钟前
Golang 构建学习
开发语言·学习·golang
番茄去哪了5 分钟前
单体转微服务:正确的拆分思路与实战原则(上)
java·微服务·架构
AI进化营-智能译站7 分钟前
ROS2 C++开发系列19-枚举定义机器人状态机|随机数生成仿真测试数据流
java·c++·ai·机器人
fengxin_rou8 分钟前
黑马点评项目万字总结:从redis基础到实战应用详解
java·开发语言·分布式·后端·黑马点评
dEso RSET8 分钟前
FrankenPHP实践
java
zhouwy1139 分钟前
Golang 基础与实战笔记:从语法到微服务的全面指南
开发语言·go
灰子学技术11 分钟前
Envoy TCP 层面的 Metric 指标分析
开发语言·网络·网络协议·tcp/ip·php
逸Y 仙X20 分钟前
文章二十:Elasticsearch高亮搜索完全指南
java·大数据·运维·elasticsearch·搜索引擎·全文检索
清水白石00821 分钟前
生成器不是性能银弹:什么时候该用 `yield` 省内存,什么时候它会拖慢 Python 数据处理吞吐?
开发语言·python·原型模式