23、线程

课堂编程实践

编写10个线程,第一个线程从1加到10,第二个线程从11加到20,....第10个线程从99加到100,组后再把10个线程的结果相加。

public class Accumulator extends Thread {
private int startNum;
public static int sum;
public Accumulator(int startNum) {
	this.startNum=startNum;
}
public static synchronized void add(int num) {
	sum+=num;
	//System.out.println(sum);
}
public void run() {
	int sum=0;
	for(int i=0;i<10;i++) {
		sum+=startNum+i;
		//System.out.println(sum);
	}
	add(sum);
}
public static void main(String[]args) throws Exception{
	int count=10;
	Thread []threadList=new Thread[count];
	for(int i=0;i<count;i++) {
		threadList[i]=new Accumulator(10*i+1);
		threadList[i].start();
	}
	for(int i=0;i<count;i++) {
		threadList[i].join();
	}
	System.out.println("Sum is:"+sum);
}
}

运行结果:

Sum is:5050
 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值