当前位置: 首页 > 知识库问答 >
问题:

在android studio java中如何检查更新日期是否大于当前日期

许琛
2023-03-14
   JobRepository jobRepository = new JobRepository(a.getApplication());
        jobRepository.findEnquiry().observe(getViewLifecycleOwner(), jobsEnquiry -> {
        TableRow[] tableRows = new TableRow[jobsEnquiry.size()];

        for (int i=0; i<jobsEnquiry.size(); i++) {
            Job job = jobsEnquiry.get(i).job;
            tableRows[i] = new TableRow(a);
            tableRows[i].setId(i + 1);
            tableRows[i].setPadding(0,20,0,20);
            if(job.getStatus().equals("Left message/Awaiting reply")){
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd H:m:s");
                Date updatedDate = job.getUpdatedAt();
                Date date = job.getDate();
                Date currentTime = Calendar.getInstance().getTime();
                tableRows[i].setBackgroundResource(android.R.drawable.list_selector_background);
                tableRows[i].setBackgroundResource(R.drawable.table_outline);

                if (updatedDate.getTime() < currentTime.getTime()){
                    tableRows[i].setBackgroundResource(android.R.drawable.list_selector_background);
                    tableRows[i].setBackgroundResource(R.drawable.table_outline_status);
                }

            }
            else if(job.getStatus().equals("Action required")){
                tableRows[i].setBackgroundResource(android.R.drawable.list_selector_background);
                tableRows[i].setBackgroundResource(R.drawable.table_outline_status);
            }

共有1个答案

令狐唯
2023-03-14

date类的getTime()返回的值为long(请参阅:https://developer.android.com/reference/java/util/date#getTime()

所以下面的代码可以工作,但是它不能很好地处理时区。

private final long TWENTYFOUR_HOURS = TimeUnit.HOURS.toMillis(24);

if ((updatedDate.getTime() + TWENTYFOUR_HOURS) < currentTime.getTime()){
//Do something
}

if ((updatedDate.getTime() + TimeUnit.HOURS.toMillis(24)) < currentTime.getTime()){
//Do something
}
 类似资料:
  • 问题内容: 我想通过将NSDate与当前日期进行比较来检查NSDate是否在之前(过去)。我该怎么做? 谢谢 问题答案: 我找到了方法。 您也有方法。 迅速3到迅速5:

  • 如果我有: 例句:如果我想从21/04/2014开始在酒店预订房间,那应该是不可能的,因为今天是28/07/2014。 我如何在JavaFX中做到这一点?

  • 问题内容: 我正在使用Java应用程序,该应用程序会在用户在命令行中输入的持续时间内生成报告。用户需要以以下格式输入日期:dd-MM-yyyy 例: java报告2013年1月1日至2013年3月31日 在代码中,我将日期保存在两个字符串中。我必须确保用户输入的开始日期应该早于结束日期。是否有内置函数可以通过将这两个字符串传递给它来帮助我实现这一目标? 问题答案: 您可以使用Date.before

  • 我正在进行JavaScript验证,验证文本框的日期是否等于当前日期。 如果大于或等于今天的日期,则显示错误消息。 注意:在我的中,我已将日期转换为格式。所以我需要检查date与格式的当前日期。这是我的代码: 我需要使用日期的格式来检查我的文本框中的日期,因此我今天的值只能使用日期的格式。

  • 我有两个约会。 我如何检查一个日期是否比另一个日期大? 我试过这个: 但它不起作用=( 这种dd/mm/yyyy格式有方法吗?

  • 我有几个yyyy-mm-dd格式的日期,为了处理它们,我使用了碳库。 我的问题是:我如何知道当前年份中是否已经存在随机日期? 例如,今天是2018-10-19,如果我将其与一些日期进行比较,请返回以下内容: 我尝试了以下方法: 我的问题是,我不知道如何应用此条件仅在当前年份中查找日期,因为如果我将当前日期与前一年的日期进行比较,它仍然返回true。我怎样才能做到这一点?非常感谢。