首页 > 解决方案 > 预约班

问题描述

我正在尝试创建一种将约会添加到 arraylist 约会日历的方法。此方法将验证日期以查看用户输入是否等于我的代码中的 SimpleDateFormat、约会的开始时间和结束时间,并查看它是否在未来。

我曾尝试使用 java Date api 来检查这一点,但是当我尝试扩展类以访问属性时,它总是会导致编译时出错。所以总的来说,我的问题是将约会类型的对象与日期类型的对象进行比较的最佳方法是什么?我尝试对 getDate() 和 startTime 和 endTime 使用访问器,但它也不允许我获取它们。

public AppointmentDate(String appString)
{
    // 1) split ithe string into Date/from/to
    // 2) consturct the Date object for the appDate
    // 3) consturct the Date object for the startTime
    // 4) consturct the Date object for the endTime

    String[] appDetails = appString.split(",");

    if(appDetails.length == 2)
    {
        try {
            SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
            this.appDate = df.parse(appDetails[0]);
            DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy,mm:HH");
            String dFormat = appDetails[0] + "," + appDetails[1];
            this.startTime = formatter.parse(dFormat);
            dFormat = appDetails[0] + "," + appDetails[2];
            this.endTime = formatter.parse(dFormat);
        }
        catch (Exception ex)
        {

        }
    }

    else 
    {
        System.out.print("User Date is Invalid");
    }
}
public void setStartTime(Date startTime) 
{
    this.startTime = startTime;
}

public Date getStartTime()
{
    return startTime;
}

public void setEndTime(Date endTime) 
{
    this.endTime = endTime;
}

public Date getEndTime()
{
    return endTime;
}

public void setAppdate(Date appDate) 
{
    this.appDate = appDate;
}

public Date getAppDate()
{
    return appDate;
}


public void add(Appointment a) 
{
    if (a.equals(a.getDate()))
    {
        if(a.getStartTime() < a.getEndTime())
        {

        }
    }
    else
    {
        System.out.print("");
    }

}

标签: javadateobject

解决方案



推荐阅读