javascanner模拟交通信号灯
时间: 2024-09-24 12:10:53 浏览: 31
8.javaScanner类.zip
在Java中,我们可以使用`Scanner`类配合简单的循环来模拟交通信号灯。`Scanner`主要用于获取用户输入,这里我们并不直接使用它控制信号灯,但可以创建一个控制信号灯状态的类,比如`TrafficLight`,包含红绿黄三种颜色的状态。
首先,定义一个`TrafficLight`类,它有三个状态变量分别表示红、绿、黄灯,并有一个方法如`changeColor()`用于改变当前的颜色:
```java
import java.util.Scanner;
class TrafficLight {
private String currentColor = "Red"; // 红色
public void changeColor() {
if (currentColor.equals("Red")) {
currentColor = "Green";
} else if (currentColor.equals("Green")) {
currentColor = "Yellow";
} else { // Yellow
currentColor = "Red";
}
}
// 获取当前信号灯颜色的方法
public String getColor() {
return currentColor;
}
}
```
接着,你可以创建一个`main`函数,使用`Scanner`接收用户的输入来控制信号灯的变化,例如每按一次键就切换一次信号灯:
```java
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
TrafficLight trafficLight = new TrafficLight();
while (true) {
System.out.println("Current signal color: " + trafficLight.getColor());
System.out.print("Press any key to change the light (Q to quit): ");
char input = scanner.nextLine().charAt(0);
if (input == 'Q' || input == 'q') {
break; // 如果用户输入 Q 或者 q,则退出程序
}
trafficLight.changeColor();
}
scanner.close();
}
```
在这个例子中,`Scanner`的主要作用就是读取用户的键盘输入。用户可以通过输入控制信号灯的切换,直到选择退出程序。
阅读全文