第16周作业

题目1:编写一个应用程序,利用Java多线程机制,实现时间的同步输出显示。

源代码:1.TimeObject.java

package a;
import java.util.Date;
    public class TimeObject implements Runnable {

        public void run() {    
            Date date=null;
            while(true) {
                date=new Date();
                System.out.println(date);
                try {
                    Thread.sleep(1000);
                }
                catch(InterruptedException e) {
                    e.printStackTrace();
                }
                
            }
        }

    }

2.Main.java

package a;
public class Main {
        public static void main(String[] args) {
        //ThreadTime tt=new ThreadTime();
        //    tt.start();
            Thread t=new Thread(new TimeObject());
            t.start();
        }

    }

题目2:编写一个应用程序,利用Java多线程机制,实现猜数字游戏(随机数范围0~100之间的整数)。

源代码:game.java

package a;
import java.util.Random;
import java.util.Scanner;

public class game{
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        NumberGame num1=new NumberGame();
        Thread t=new Thread(num1);
        t.start();
        System.out.println("猜数字游戏开始啦!请输入你猜的数字:");
        try {
            Thread.sleep(1000);
            while(true) {
                t.interrupt();
                int num2=scanner.nextInt();
                if(num1.getNum()==num2) {
                    System.out.println("恭喜你猜对了");
                    break;
                    }
                else if(num2<num1.getNum()) {
                    System.out.println("很遗憾猜小了,请重新猜");
                }else if(num2>num1.getNum()) {
                    System.out.println("很遗憾猜大了,请重新猜");
                }
                
            }
            
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        
    }
}

class NumberGame implements Runnable{
    int num;
    public synchronized void run() {
        Random n=new Random();
        num=n.nextInt(100);
    }
    public int getNum() {
        return num;
    }
    public void setNum(int num) {
        this.num = num;
    }
    
}

 

 

 

posted @ 2019-12-22 22:10  昵称是个啥~~  阅读(174)  评论(0编辑  收藏  举报