设计实验
有 3 个开关:a b c
有 3 个电灯:x y z
要求实现:
a 能控制 x
b 能控制 x, y
c 能 x
注意:1个灯泡可以被多个开关控制;1个开关可以同时控制多个灯泡
所谓“控制”:当开关操作时,当前灯泡的状态发生翻转。亮->灭 或 灭->亮
import java.util.*;
class Light
{
private boolean state; // 灯的状态。true: 亮
public String toString()
{
if(state)
return "亮";
else
return "灭";
}
// 翻转状态
public void change()
{
state = !state;
}
}
class Switch
{
//Light[] a = ...
Vector v = new Vector();
public void addLight(Light x)
{
v.add(x);
}
// 按了一下开关
public void press()
{
for(int i=0; i