提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、代码

前言

JAVA多线程:龟兔赛跑


提示:以下是本篇文章正文内容,下面案例可供参考

一、代码


```java
public class Race implements java.lang.Runnable {static String winner=null;@Overridepublic void run() {for (int i = 0; i <=100; i++) {if(gameOver(i)) {break;}if(Thread.currentThread().getName().equals("兔子")&&i%10==0) {try {Thread.sleep(1);} catch (InterruptedException e) {throw new RuntimeException(e);}}System.out.println(Thread.currentThread().getName()+"跑了第"+i+"步");}}private boolean gameOver(int step){if(winner!=null) {return true;}else{if (step >= 100){winner = Thread.currentThread().getName();System.out.println("Winner is " + winner);return true;}elsereturn  false;}}public static void main(String[] args) {Race race =new Race();new Thread(race,"兔子").start();new Thread(race,"乌龟").start();}
}

# 总结
运用Runnable启动线程,执行龟兔赛跑程序
1.两个进程同时开始跑,距离终点越来越近(100)。
2.判断是否比赛结束(有一方到达终点)。
3.决出胜利者(到达终点的一方)。
4.兔子线程在中途需要休息

JAVA多线程:龟兔赛跑相关推荐

  1. java写龟兔赛跑_简单的实现java多线程——龟兔赛跑

    题目: 实现龟兔赛跑 提示:可以采用Math.random()取得0~1之间的随机数模拟比赛进程, 如总距离为100米,在随机数00.3之间代表兔子跑,每次跑2米,在0.31之间代表乌龟跑,每次跑1 ...

  2. java多线程模拟龟兔赛跑,JAVA多线程模拟龟兔赛跑

    JAVA多线程模拟龟兔赛跑! class Rabbit extends Thread{ Tortoise tor; int Journey; int RabbitSpeed; public Rabbi ...

  3. Java多线程_复习(更新中!!)

    java多线程的常见例子 一.相关知识: Java多线程程序设计到的知识: (一)对同一个数量进行操作 (二)对同一个对象进行操作 (三)回调方法使用 (四)线程同步,死锁问题 (五)线程通信 等等 ...

  4. Java多线程学习——01

    Java多线程学习--01 1.核心概念 程序:是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念 进程Process:是执行程序的一次执行过程,它是一个动态的概念,是系统资源分配的单 ...

  5. 【Java多线程】轻松搞定Java多线程(一)

    轻松搞定Java多线程(一) Java多线程详解(一) 1. 线程简介 2.线程的创建 2.1 三种创建方式 2.2 Thread 2.3 实现Runnable 2.3.1 初识并发问题 2.3.2 ...

  6. Java多线程(总)

    Java多线程 Process进程与Thread线程 程序是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念 进程是执行程序的一次执行过程,它是一个动态的概念.是系统资源分配的单位 同 ...

  7. java多线程全面解析

    文章目录 java多线程 1.线程简介 2.线程实现(三种) 继承Thread类(重点) 步骤: 示例代码: 多线程下载图片: 实现Runnable接口(重点) 步骤: 基础代码: 体现Runnabl ...

  8. JavaSE基础二十:Java 多线程(线程基础知识、Java 多线程、Java 实现多线程(继承 Thread 类、实现 Runnable 接口、实现 Callable 接口))

    本章目录 1.基础知识准备 2.Java 多线程概述 3.Java 实现多线程 3.1.继承 Thread 类 如何开启新线程 Thread 类常用方法 多线程中的同步 Thread 类同步方法 多线 ...

  9. Java多线程(四)线程并发的理解

    前言 并发,在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行. ----以上摘自百度百科 一.龟 ...

最新文章

  1. jenkins ssl证书报错问题解决
  2. 安装JAVA 运行环境
  3. Windows7 支付宝证书安装方法
  4. Flume:使用Apache Flume收集客户产品搜索点击数据
  5. python requests cookie_python requests 带cookie访问页面
  6. 三个等于号===和两个等于号==的区别
  7. 用python开发一个影视网站_GitHub - lyzhanghai/movie_project: 一个使用Python+Flask开发的微电影网站...
  8. TIA 和step 7硬件更新网址汇总
  9. cocos2dx 组件
  10. 凯立德2015夏季3621J0P4G卡版分区地图
  11. 计算机程序无法响应如何解决,电脑卡死出现应用程序未响应不可以正常工作怎么办?...
  12. 【学术相关】过来人对研究生阶段的学习建议
  13. Mindjet MindManager 2019安装包
  14. 传统C/S软件的断骨增高
  15. ipad已有2周未备份。ipad插入电源、被锁定且接入Wi-Fi时会进行备份
  16. java获取一定距离以内的经纬度值_java 根据经纬度计算两地间的距离
  17. ftp最好用的工具,6款最好用的ftp工具软件推荐,使用指南
  18. java计算机毕业设计甜趣网上蛋糕店订购系统源码+系统+数据库+lw文档+mybatis+运行部署
  19. 计算机科学引论2013中文版,(完整版)计算机科学引论(2013影印版)考试重点
  20. hystrix设置超时时间

热门文章

  1. python 柱状图如何添加数字标签_matplotlib可视化之如何给图形添加数据标签?
  2. 合伙的债务应如何承担
  3. 超级抠图:Super PhotoCut for Mac
  4. Splunk健康检查orphaned searches
  5. win 11 微软 输入法 提示框 提示栏 消失 不见 不显示 找回 显示 可行性 解决方案
  6. 长期有效的Google Adsense英文高单价关键词
  7. 第二章 查询结果排序(SQL server经典实例)
  8. 瘟疫公司中国版(Android)手动破解内购
  9. 1010. Pairs of Songs With Total Durations Divisible by 60*
  10. python中按钮位置设定_tkinter Python中的按钮位置(网格)