使用java多线程打印0到1000输出且不重复,如何实现

 我来答
修手机哋屠玞
2015-04-24 · TA获得超过160个赞
知道答主
回答量:27
采纳率:0%
帮助的人:24.7万
展开全部

这其实是一个多线程,资源共享的问题。实现Runnable接口就可以了。

截图是一个多线程资源共享的例子,每个线程可以互相知道ticket的值,这样就不会重复。


把ticket初始为0,每个线程打印出ticket的值,打完+1。下一个线程再打印ticket就是+1之后的值。然后再判断ticket的值,>=1000的时候停止线程。


详细的你可以看看:

java多线程总结 - Rollen Holt - 博客园

http://www.cnblogs.com/rollenholt/archive/2011/08/28/2156357.html


完全可以解决你的需求

dreamseaKIK
推荐于2016-04-16 · TA获得超过670个赞
知道小有建树答主
回答量:463
采纳率:81%
帮助的人:203万
展开全部

主线程里设定静态变量static int n=0;

然后设置专门的打印函数,并在该函数上声音同步控制

public synchronized void printN(){
      if(n>1000){
            return n;      }
      System.out.println(n);
      n++;
      return n;
}

子线程中循环调用printN这个方法,并根据返回值判断是否大于1000,大于1000的话,结束线程

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式