龟兔赛跑小程序

龟兔赛跑小程序

package com.three;
//兔子
public class Demo extends Thread{
	//赛道距离
	private static int track = 100;
	Object obj = new Object();
	
	@Override
	public void run() {
		
		while(true){
			//同步代码块
			synchronized (obj) {
				if(track>0){
					//睡眠
					try {
					//兔子跑得快少线程睡一会
						Thread.sleep(100);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					if(track>50&track<=100){
			System.out.println(getName()+"离终点还有"+track+"米");
					}else if(track==50){
						System.out.println("兔子睡着了");
					}else{
						break;
					}
					track--;
				}
				
			}
		}
		
	}
}

package com.three;
//乌龟
public class Demo2 extends Thread{
	//赛道距离
	private static int track = 100;
	Object obj = new Object();
	
	@Override
	public void run() {
		
		while(true){
			//同步代码块
			synchronized (obj) {
				if(track>=0){
					//睡眠
					try {
					//乌龟跑得慢线程多睡一会
						Thread.sleep(300);
					} catch (InterruptedException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
					}
					if(track>0){
		System.out.println(getName()+"离终点还有"+track+"米");
					}else if(track==0){
						System.out.println("乌龟胜利了!");
						//程序结束不在运行
						System.exit(0);
					}else{
						break;
					}
					track--;
				}
				
			}
		}
		
	}
}
package com.three;
//测试类
public class Test3 {

	public static void main(String[] args) {
		
		//创建线程类对象
		Demo t1 = new Demo();
		Demo2 t2 = new Demo2();
		
		t1.setName("兔子");
		t2.setName("乌龟");
		
		//启动
		t1.start();
		
		t2.start();
	}
}

打印结果:

兔子离终点还有100米
兔子离终点还有99米
乌龟离终点还有100米
兔子离终点还有98米
兔子离终点还有97米
兔子离终点还有96米
乌龟离终点还有99米
兔子离终点还有95米
兔子离终点还有94米
兔子离终点还有93米
乌龟离终点还有98米
兔子离终点还有92米
兔子离终点还有91米
兔子离终点还有90米
乌龟离终点还有97米
兔子离终点还有89米
兔子离终点还有88米
兔子离终点还有87米
乌龟离终点还有96米
兔子离终点还有86米
兔子离终点还有85米
兔子离终点还有84米
乌龟离终点还有95米
兔子离终点还有83米
兔子离终点还有82米
兔子离终点还有81米
乌龟离终点还有94米
兔子离终点还有80米
兔子离终点还有79米
兔子离终点还有78米
乌龟离终点还有93米
兔子离终点还有77米
兔子离终点还有76米
兔子离终点还有75米
乌龟离终点还有92米
兔子离终点还有74米
兔子离终点还有73米
兔子离终点还有72米
乌龟离终点还有91米
兔子离终点还有71米
兔子离终点还有70米
兔子离终点还有69米
乌龟离终点还有90米
兔子离终点还有68米
兔子离终点还有67米
兔子离终点还有66米
乌龟离终点还有89米
兔子离终点还有65米
兔子离终点还有64米
兔子离终点还有63米
乌龟离终点还有88米
兔子离终点还有62米
兔子离终点还有61米
兔子离终点还有60米
乌龟离终点还有87米
兔子离终点还有59米
兔子离终点还有58米
兔子离终点还有57米
乌龟离终点还有86米
兔子离终点还有56米
兔子离终点还有55米
兔子离终点还有54米
乌龟离终点还有85米
兔子离终点还有53米
兔子离终点还有52米
兔子离终点还有51米
乌龟离终点还有84米
兔子睡着了
乌龟离终点还有83米
乌龟离终点还有82米
乌龟离终点还有81米
乌龟离终点还有80米
乌龟离终点还有79米
乌龟离终点还有78米
乌龟离终点还有77米
乌龟离终点还有76米
乌龟离终点还有75米
乌龟离终点还有74米
乌龟离终点还有73米
乌龟离终点还有72米
乌龟离终点还有71米
乌龟离终点还有70米
乌龟离终点还有69米
乌龟离终点还有68米
乌龟离终点还有67米
乌龟离终点还有66米
乌龟离终点还有65米
乌龟离终点还有64米
乌龟离终点还有63米
乌龟离终点还有62米
乌龟离终点还有61米
乌龟离终点还有60米
乌龟离终点还有59米
乌龟离终点还有58米
乌龟离终点还有57米
乌龟离终点还有56米
乌龟离终点还有55米
乌龟离终点还有54米
乌龟离终点还有53米
乌龟离终点还有52米
乌龟离终点还有51米
乌龟离终点还有50米
乌龟离终点还有49米
乌龟离终点还有48米
乌龟离终点还有47米
乌龟离终点还有46米
乌龟离终点还有45米
乌龟离终点还有44米
乌龟离终点还有43米
乌龟离终点还有42米
乌龟离终点还有41米
乌龟离终点还有40米
乌龟离终点还有39米
乌龟离终点还有38米
乌龟离终点还有37米
乌龟离终点还有36米
乌龟离终点还有35米
乌龟离终点还有34米
乌龟离终点还有33米
乌龟离终点还有32米
乌龟离终点还有31米
乌龟离终点还有30米
乌龟离终点还有29米
乌龟离终点还有28米
乌龟离终点还有27米
乌龟离终点还有26米
乌龟离终点还有25米
乌龟离终点还有24米
乌龟离终点还有23米
乌龟离终点还有22米
乌龟离终点还有21米
乌龟离终点还有20米
乌龟离终点还有19米
乌龟离终点还有18米
乌龟离终点还有17米
乌龟离终点还有16米
乌龟离终点还有15米
乌龟离终点还有14米
乌龟离终点还有13米
乌龟离终点还有12米
乌龟离终点还有11米
乌龟离终点还有10米
乌龟离终点还有9米
乌龟离终点还有8米
乌龟离终点还有7米
乌龟离终点还有6米
乌龟离终点还有5米
乌龟离终点还有4米
乌龟离终点还有3米
乌龟离终点还有2米
乌龟离终点还有1米
乌龟胜利了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值