步骤:创建四个类,分别为时间类、闹钟类、闹钟管理类和主类。
操作:输入1添加闹钟,添加的是1时10分;输入2删除闹钟,删除的是1时10分;输入1添加闹钟,添加的是2时20分;输入3检查闹钟,检查的是2时20分;输入4,退出闹钟管理。
一、具体代码
㈠时间类
package alarm.clock;
public class Time
{
private int hour;
private int minute;
public Time(int hour, int minute)
{
this.hour=hour;
this.minute=minute;
}
public int getHour()
{
return hour;
}
public int getMinute()
{
return minute;
}
}
㈡闹钟类
public class Alarm
{
private Time alarmTime;
public Alarm(Time alarmTime)
{
this.alarmTime = alarmTime;
}
public void ring()
{
System.out.println("闹钟响了!");
}
public Time getAlarmTime()
{
return alarmTime;
}
}
㈢闹钟管理类
package alarm.clock;
import java.util.ArrayList;
import java.util.List;
public class AlarmManager
{
private List<Alarm> alarms;
public AlarmManager()
{
alarms = new ArrayList<>();
}
public void addAlarm(Alarm alarm)
{
alarms.add(alarm);
}
public void removeAlarm(Alarm alarm)
{
alarms.remove(alarm);
}
public void checkAlarms(Time currentTime)
{
for(Alarm alarm:alarms)
{
if(alarm.getAlarmTime().getHour() == currentTime.getHour() && alarm.getAlarmTime().getMinute() == currentTime.getMinute())
{
alarm.ring();
}
}
}
}
㈣主类
package alarm.clock;
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
AlarmManager alarmManager = new AlarmManager();
Scanner scanner = new Scanner(System.in);
System.out.println("欢迎使用闹钟管理器!");
while(true)
{
System.out.println("请选择操作:");
System.out.println("1.添加闹钟");
System.out.println("2.删除闹钟");
System.out.println("3.检查闹钟");
System.out.println("4.退出闹钟");
int choice = scanner.nextInt();
if (choice == 1)
{
System.out.println("请输入闹钟时间(小时):");
int hour = scanner.nextInt();
System.out.println("请输入闹钟时间(分钟):");
int minute = scanner.nextInt();
Time alarmTime = new Time(hour, minute);
Alarm alarm = new Alarm(alarmTime);
alarmManager.addAlarm(alarm);
System.out.println("闹钟添加成功!");
}
else if (choice == 2)
{
System.out.println("请输入要删除的闹钟时间(小时):");
int hour = scanner.nextInt();
System.out.println("请输入要删除的闹钟时间(分钟):");
int minute = scanner.nextInt();
Time alarmTime = new Time(hour, minute);
Alarm alarm = new Alarm(alarmTime);
System.out.println("闹钟删除成功!");
}
else if (choice == 3)
{
System.out.println("请输入当前时间(小时):");
int hour = scanner.nextInt();
System.out.println("请输入当前时间(分钟):");
int minute = scanner.nextInt();
Time currentTime = new Time(hour, minute);
alarmManager.checkAlarms(currentTime);
}
else if (choice == 4)
{
break;
}
}
System.out.println("感谢使用闹钟管理器!");
}
}