Java编译编写一个Java应用程序,在主线程中再创建两个线程,一个线程负责给出键盘上字母键上的字母,另一个线程负责用户在命令行中输入所给出的字母。
时间: 2024-02-26 19:56:38 浏览: 64
好的,我理解了你的问题。下面是一个简单的Java程序可以满足你的需求:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 创建线程1
Thread thread1 = new Thread(new Runnable() {
@Override
public void run() {
while (true) {
System.out.println("请输入字母键上的字母:");
String letter = scanner.nextLine();
System.out.println("你输入的字母是:" + letter);
}
}
});
// 创建线程2
Thread thread2 = new Thread(new Runnable() {
@Override
public void run() {
while (true) {
System.out.println("请输入字母:");
String letter = scanner.nextLine();
System.out.println("你输入的字母是:" + letter);
}
}
});
// 启动线程
thread1.start();
thread2.start();
}
}
```
在这个程序中,我们使用了 `Scanner` 类来获取用户的输入。线程1负责从键盘上获取字母键上的字母,线程2负责从命令行中获取用户输入的字母。两个线程都是无限循环的,直到程序被终止。
请注意,由于两个线程都在不断地获取用户输入,因此需要小心处理并发问题。在实际的应用程序中,可能需要使用同步机制来避免竞争条件。
阅读全文