他为什么一直回11?(顺便说一句,现在是当地时间16小时)

Nez*_*zir 1 time android calendar

private void hour()
{
    Toast.makeText(this,String.valueOf(Calendar.HOUR_OF_DAY),Toast.LENGTH_LONG).show();
}
Run Code Online (Sandbox Code Playgroud)

War*_*ith 5

因为你只是解析了HOUR_OF_DAY的值,即11,永远.

您应该创建一个GregorianCalendar实例,给它当前日期,然后使用 get(Calendar.HOUR_OF_DAY)

代码示例:

Calendar calendar = GregorianCalendar.getInstance();
calendar.setTime(new Date());
int hour = calendar.get(Calendar.HOUR_OF_DAY);
Run Code Online (Sandbox Code Playgroud)

  • 我之前犯过这种错误.当你发现bug时,在额头上做了一个很好的耳光:) (2认同)