Java活动管理系统 - ActivitySubSystem类详解
/**
* 活动子系统类,用于管理活动列表和相关操作。
*/
public class ActivitySubSystem {
ArrayList<Activity> activities = new ArrayList<>();
/**
* 添加活动到活动列表中。
* @param activity 要添加的活动对象
*/
public void addActivity(Activity activity){
activities.add(activity);
}
/**
* 根据活动ID从活动列表中移除活动。
* @param id 要移除的活动ID
*/
public void removeActivityById(String id)
{
activities.removeIf(a -> a.id.equals(id));
}
/**
* 根据活动ID获取活动对象。
* @param id 要获取的活动ID
* @return 活动对象,若不存在则返回null
*/
public Activity getActivityById(String id)
{
for (Activity a:activities) {
if(a.id.equals(id)) return a;
}
return null;
}
/**
* 根据日期获取活动列表。
* @param date 要筛选的日期
* @return 符合日期条件的活动列表
*/
public ArrayList<Activity> getActivitiesByDate(Date date) {
ArrayList<Activity> result = new ArrayList<>();
for (Activity activity : activities) {
if (activity.getStartTime().before(date) && activity.getEndTime().after(date)) {
result.add(activity);
}
}
return result;
}
/**
* 获取所有活动列表。
* @return 所有活动列表
*/
public List<Activity> getActivityList()
{
return activities;
}
/**
* 检查某个团队参与的活动数量。
* @param teamId 要检查的团队ID
* @return 该团队参与的活动数量
*/
public int checkActivityNumOfTeam(String teamId)
{
int count = 0;
for (Activity activity:activities)
{
for(Team team: activity.teams)
{
if(team.teamId.equals(teamId)) count++;
}
}
return count;
}
}
原文地址: https://www.cveoy.top/t/topic/UN6 著作权归作者所有。请勿转载和采集!