在main方法中启动两个线程
第一个线程随机输出1~100数字
第二个线程在输入q时将第一个线程停止
mport java.util.Scanner;
public class Homework {
public static void main(String[] args) {
A one = new A();
B two = new B();
one.start();
two.start();
}
}
class A extends Thread{
boolean flag = true;
public A(){}
public A (boolean flag){
this.flag = flag;
}
@Override
public void run() {
while (true){
System.out.println("生成随机数为"+(int)(Math.random()*100));
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
if (flag == false){
break;
}
}
}
}
class B extends Thread{
@Override
public void run() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入字母:");
while (true){
if (scanner.hasNext()){
String str = scanner.next();
System.out.println(str);
if (str.equals("q") || str.equals("Q")){
A a = new A(false);
break;
}
}
}
}
}
在写过程中回忆起了许多之前的知识。
1.random随机数使用: (int)(Math.random()*100) 需要将两边都用括号括起否则只括int 得到的结果是 0。
2. scanner使用:Scanner scanner = new Scanner(System.in);
String str = scanner.next();
比较字符串时使用equals比较
3.构造器先编译,在编译代码块中内容