Java线程输出ABCD

package xufeng.java;

public class Printer implements Runnable{

// 输出字符

String printStr = null;

// 下一个输出对象

Printer nextPrinter = null;

public Printer(String str)

{

printStr = str;

}

public void setNextPrinter(Printer nextPr)

{

nextPrinter = nextPr;

}

@Override

public void run() {

for (int i = 0; i < 10; i++)

{

synchronized (nextPrinter) {

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.print(printStr);

nextPrinter.notifyAll();

}

synchronized (this) {

try {

this.wait();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}

}

package xufeng.java;

public class MainTest {

/**

* @param args

* @throws InterruptedException

*/

public static void main(String[] args) throws InterruptedException {

Printer a = new Printer("A");

Printer b = new Printer("B");

Printer c = new Printer("C");

Printer d = new Printer("D");

// 设置前后关系

a.setNextPrinter(b);

b.setNextPrinter(c);

c.setNextPrinter(d);

d.setNextPrinter(a);

// 启动线程。相隔一秒以免初始输出顺序混乱

new Thread(a).start();

Thread.sleep(1000);

new Thread(b).start();

Thread.sleep(1000);

new Thread(c).start();

Thread.sleep(1000);

new Thread(d).start();

}

}

java循环输出abcd_Java线程输出ABCD相关推荐

  1. Java循环嵌套,实现输出菱形图案

    用Java编写一个如下的菱形: 本质问题就是循环嵌套,外层决定有多少行,两个内层循环,第一个内层循环决定每行空格的个数,第二个内层决定每行有多少*,而且内层需要分成上下两个大部分,上下每个部分要分成四 ...

  2. 有3个线程ABC。按照ABC来运行(A线程输出A,B线程输出B,C线程输出C,以此类推,循环输出)。

    个人记录:2018年,工作的第6到7个年头. 重点研究自己不太擅长的技术:分布式.高并发.大数据量.数据库优化.高性能.负载均衡等. 刷题是一种态度,是一种好习惯. 有3个线程ABC.按照ABC来运行 ...

  3. java当中有关循环的代码_有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下。1、循环输出1到100之间所有能被3或能被4整除的数。pack...

    有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** ...

  4. Java基础【之】输出一个菱形(详解)

    Java基础[之]输出一个菱形(详解) 代码示例 <目录:Java渐进式学习> <目录:Java设计模式> <目录:从零手写Tomcat> 代码示例 public ...

  5. java 字符串输出字符_输出java字符串

    1-1 字符串排序 用Java编写一个能对一组字符串按字典序升序排序的程序 输入为N和N行字符串,需要按行输出字符串升序排序的结果 如输入 3 Abc Abe Abd 输出: Abc Abd Abe ...

  6. Java实现数组的倒序输出

    Java实现数组的倒序输出 package com.java;import java.sql.SQLOutput; import java.util.Scanner; import java.util ...

  7. Java抓取起点小说输出到本地文件夹和数据库

    Java抓取起点小说输出到本地文件夹和数据库 目录 项目结构 所需插件 项目代码 输出结果 目录 项目结构 第一次写网络爬虫,参考了别人的,也自己理解了用法 所需插件 因为使用了mevan,直接上po ...

  8. 14.线程诊断_cpu占用高(top、ps H -eo pid,tid,%CPU | grep tid、clear、jstack pid)-------注意jstack输出的线程信息是16进制的

    线程和虚拟机栈是息息相关的. 这里提供了一些线程诊断的一些案例, 有些时候我们需要学习掌握一些工具,有利于诊断我们的线程情况 来看第一个案例,有一个应用程序,cpu占用居高不下,影响了其他程序,怎么去 ...

  9. R语言使用for循环嵌套ggplot2可视化输出多个可视化结果实战

    R语言使用for循环嵌套ggplot2可视化输出多个可视化结果实战 目录 R语言使用for循环嵌套ggplot2可视化输出多个可视化结果实战

最新文章

  1. 微服务架构--链路追踪(Nginx篇)
  2. bean json转kotlin_Android kotlin插件神器Json直接生成javaBean
  3. php yii框架源码,yii 源码解读
  4. .NET 6 预览版 7 Released
  5. 去中心化数据库Bluzelle公布2021年路线图,将于2月3日上线主网
  6. 24. Spring Boot 事务的使用
  7. android 约束 布局_Android约束布局动画
  8. 线性表的顺序存储结构和链式存储结构的比较
  9. 几种影响软件可伸缩性的问题
  10. Linux常用命令系统相关
  11. 关于输入阻抗和输出阻抗的理解
  12. linux制作U盘启动盘无法使用,完美:使用syslinux制作U盘启动盘
  13. FFmpeg开发(1)从mp4中提取aac音频
  14. 笔记本此计算机到网络出现一个叉,笔记本电脑无线网络不可用并显示红叉的解决方...
  15. SpringBoot项目,从创建到简单实战
  16. 2018软科计算机科学工程排行,2018全球计算机与工程学科排名:清华第7,中国9个学科世界第一!...
  17. 10个免费音效素材下载网站,下载超方便还能免费商用!
  18. java trove_[XMLer的生活]可使用基本类型作为键值的Java集合类-Trove 集合类
  19. c语言分拆素数和,分拆素数和。
  20. 迎接Ubuntu Flatpak Remix,预装了Flatpak支持的Ubuntu

热门文章

  1. html实现动态花瓣凋落
  2. 2 C++标准库(1- IO库、顺序容器和泛型算法)
  3. 每日一题之Vue数据劫持原理是什么?
  4. Web前端期末大作业-化妆品商城网页设计(HTML+CSS+JS)
  5. 万万没想到!电化学工作站操作如此简单
  6. CEVA-Xx_V17.1.0_64b安装步骤
  7. 数字科技行业的“挖井人”:京东数科不做一锤子买卖
  8. poly-yolo笔记
  9. 计算机检索中各符号表示含义,文献检索中符号的含义这些符号在文献检索中的含义:AND、 OR、 NOT、 (W)、 TI、 W/s、 AU、 LENG...
  10. 本田思域HATCHBACK哪款值得买? CVT潮酷控性价比最高