线程之龟兔赛跑
来源:互联网 发布:js正则验证非负正整数 编辑:程序博客网 时间:2024/05/05 16:39
import java.awt.BorderLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextArea;public class RaceFrame extends JFrame{JTextArea t1,t2;JButton b;public RaceFrame(){t1=new JTextArea("兔子的成绩");t2=new JTextArea("乌龟的成绩");getContentPane().add(t1,BorderLayout.WEST);getContentPane().add(t2,BorderLayout.EAST);b=new JButton("比赛开始");b.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e) { Rabbit r=new RaceFrame().new Rabbit(); Thread th1=new Thread(r,"兔子"); Wugui w=new RaceFrame().new Wugui(); Thread th2=new Thread(w,"乌龟"); th2.start();th1.start();} });JPanel p=new JPanel();//创建面板p.add(b);getContentPane().add(p,BorderLayout.SOUTH);setVisible(true);setBounds(100,100,500,500);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}private class Rabbit implements Runnable{public void run(){for(int i=1;i<11;i++){//模拟10次赛跑过程String text=t1.getText();//获得文本域信息try{Thread.sleep(1);//线程休眠}catch(Exception e){e.printStackTrace();}t1.setText(text+"兔子跑了"+i+"0米\n");if(i==9){t1.setText(text+"兔子在睡觉\n");try{Thread.sleep(10000);}catch(Exception e){e.printStackTrace();}}if(i==10){try{Thread.sleep(1);}catch(InterruptedException e){e.printStackTrace();}t1.setText(text+"兔子到达终点");}}}}private class Wugui implements Runnable{public void run(){for(int i=0;i<11;i++){String text2=t2.getText();//获得文本域信息t2.setText(text2+"乌龟跑了"+i+"0米\n");if(i==10){t2.setText(text2+"乌龟到达终点了");}}}}public static void main(String[] args) { /* Wugui w=new RaceFrame().new Wugui(); Thread th2=new Thread(w,"乌龟"); th2.start();*/RaceFrame f=new RaceFrame(); }}
阅读全文
0 0
- 线程之龟兔赛跑
- java线程之龟兔赛跑
- hdu2059DP之龟兔赛跑
- QQ与MSN之龟兔赛跑
- QQ与MSN之龟兔赛跑
- 多线程程序设计之龟兔赛跑
- 蓝桥杯之龟兔赛跑预测
- java多线程之龟兔赛跑问题
- 多线程小案例之龟兔赛跑
- 线程休眠+内部类构建=龟兔赛跑
- java 龟兔赛跑观察比赛结果(使用线程)
- 多线程之线程的百米赛跑
- 寓言-龟兔赛跑
- 龟兔赛跑
- 《龟兔赛跑》游戏
- 龟兔赛跑
- 龟兔赛跑
- hdu2059龟兔赛跑
- C++第一课-----类
- 逗号表达式
- 简单webService实例
- 剑灵省空间双开办法,附带批处理脚本
- 使用GO操作excel文件并发送email
- 线程之龟兔赛跑
- 1090 3个数和为0
- 考研数学笔记11~15
- java 遍历文件夹 和 文件夹的简单读写
- Mac 下Coursera无法播放视频的解决办法
- Tomcat配置虚拟目录、多域名、多个Http监听端口
- 区块链开发专题(数字货币如何实现交易支付)
- 收集EVA日志和配置信息
- HotSpot虚拟机对象的创建、存储和定位