0

我有一个小的java代码可以找到一个人的日期。它看起来像这样:

  Calendar now = Calendar.getInstance();
  Calendar dob = Calendar.getInstance();

  dob.setTime(birthDay); /*assume this is not null */

  int age = now.get(Calendar.YEAR) - dob.get(Calendar.YEAR);

  if (now.get(Calendar.DAY_OF_YEAR) < dob.get(Calendar.DAY_OF_YEAR)) 
  {
    age--;
  }

现在,我想说如果这个人不到 1 岁,请找出这个人是多少个月。如果这个人不到 1 个月大,请找出这个人有多少周。如果这个人不到 1 周大,找出这个人有多少天。

伪代码:

if (age < 1)
{
    ///?
}
4

2 回答 2

1

getTimeInMillis()以毫秒为单位为您提供时间。使用该值,您可以简单地计算。一秒有多少毫秒,一分钟有多少毫秒,一个小时,一天,一个月等等。

以秒为单位的时间:var a = 毫秒 / 1000。以分钟为单位的时间:a / 60 ...

于 2012-12-06T23:00:23.537 回答
1

就像是:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;


public class TimeDiff {

    public static void main(String[] args) throws ParseException {
        Date now = new Date();
        System.out.println(now);
        Date birthDate = new SimpleDateFormat("dd-MM-yyyy").parse("7-12-1983");
        System.out.println(birthDate);

        Date age = new Date(now.getTime() - birthDate.getTime());
        Calendar instance = Calendar.getInstance();
        instance.setTime(age);
        instance.add(Calendar.YEAR, -1970);
        SimpleDateFormat sdf = new SimpleDateFormat("d-W-MM-yyyy");
        System.out.println(sdf.format(instance.getTime()));
    }

}
于 2012-12-06T23:26:23.050 回答