一个线程随机输出1-100的一个值
另一个线程输入字符来中止第一个线程
package com.hspedu;
import java.util.Scanner;
/**
* @author: guorui fu
* @versiion: 1.0
*/
public class Homework01 {
public static void main(String[] args) {
randomPrint randomPrint = new randomPrint();
End end = new End(randomPrint);
end.start();
randomPrint.start();
}
}
class randomPrint extends Thread{
private boolean loop = true;
@Override
public void run() {
while(loop){
System.out.println((int)(Math.random()* 100 + 1));
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public void setLoop(boolean loop) {
this.loop = loop;
}
}
class End extends Thread{
private randomPrint a;
private Scanner scanner = new Scanner(System.in);
public End(randomPrint a) {
this.a = a;
}
@Override
public void run() {
while(true) {
System.out.println("请输入'q',退出randomPrint线程");
char key = scanner.next().toUpperCase().charAt(0);
if (key == 'Q') {
a.setLoop(false);
break;
}
}
System.out.println("退出了end线程");
}
}