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;
        }
    }
}
相关推荐
致Great1 小时前
DeepSeek Harness插件开发实战教程:我让它自己写了一个 arXiv 搜索插件
算法
hsjiasb2 小时前
FreeRTOS学习(二十七)——任务栈与栈溢出检测
开发语言·stm32·学习·学习笔记·freertos
丰锋ff3 小时前
3.1 Qt事件之事件处理器
开发语言·qt
多弗朗皮卡丘3 小时前
C语言梦开始的地方7:函数
c语言·开发语言
mldong3 小时前
"applicant" 契约:退回发起人的闭环设计
java·架构
月华路4 小时前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
gugucoding4 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
m0_380743874 小时前
从零调用 Claude 教程
开发语言·python·node.js
起床学FPGA5 小时前
AI回答问题之后,会自动跳到最下面的问题
开发语言·javascript·ecmascript
zww89491115 小时前
校园跑腿系统开发实战指南:从需求分析到上线部署全流程解析
java