Android 中从时间戳获取日期名称

2024-04-24

我有一个类,当它初始化时,它会使用公共 getter 在私有字段中记录初始化时间:

public class TestClass {

   private long mTimestamp;

    public TestClass(){
      mTimestamp = System.getCurrentMillis();
    }

    public long getTimestamp(){
          return mTimestamp;
    }
}

我还有一个带有日期名称的枚举:

public enum Days implements Serializable {
    MONDAY,
    TUESDAY,
    WEDNESDAY,
    THURSDAY,
    FRIDAY,
    SATURDAY,
    SUNDAY
}

现在问题出在另一个类中,我必须获取时间戳并设置Days字段到类初始化的日期:

public class OtherClass {

     public Days getDayOfInitialization(TestClass testClass){
          //how to do this?
          Date date = new Date(testClass.getTimestamp())
          Days day = Date.getDay(); //Deprecated!
          //convert to enum and return...
     }
}

The getDay()的方法Date已被弃用...我应该怎么做?


如果您只需要以人类可读的格式显示当前星期几,并将其格式化为当前用户的区域设置,那么您可以使用以下命令:

SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String dayString = sdf.format(new Date());

如果其区域设置为“en_US”,则输出为:

Wednesday

如果它们的语言环境是“de_DE”,则输出为:

Mittwoch

如果其区域设置为“fr_FR”,则输出为:

mercredi

但是,如果您需要星期几的数字表示(例如,如果是星期日,则希望获得“1”;如果是星期一,则希望获得“2”),那么您可以使用 Calendar:

Calendar cal = Calendar.getInstance();
int dayInt = cal.get(Calendar.DAY_OF_WEEK);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 中从时间戳获取日期名称 的相关文章

随机推荐