获取月份范围 - Java
Getting range of months - Java
我想实现一个包含月份范围的选项卡布局。此范围应包含过去和接下来的 12 个月。
我知道如何获得接下来的 12 个月,但我坚持如何获得最后和接下来的 12 个月。我可以使用 joda 时间库,但我认为这个库对于我的小型 android 应用程序来说太大了。
任何人都可以通过提供一小段代码来帮助我吗?谢谢!
您可以使用日历 class 获取当前月份。然后你可以减去 1 得到上个月的值或加 1 得到下个月。
这是一个示例片段。
Calendar calendar = Calendar.getInstance();
int month = calendar.get(Calendar.MONTH);
calendar.set(Calendar.MONTH, month - 1);
int lastMonth = calendar.get(Calendar.MONTH);
你可以写一个循环来计算过去和接下来的 12 个月。
干杯:)
您可以简单地使用日历 class 实例来完成它,使用 Calendar#add(int 字段,
整数) 喜欢:
//getting month names
DateFormatSymbols dfs = new DateFormatSymbols();
String[] months = dfs.getMonths();
//here is what you need
Calendar c = Calendar.getInstance();
System.out.println(c.getTime().toString());
c.add(Calendar.MONTH, -12);
for (int i = -12; i <=12; i++){
c.add(Calendar.MONTH, +1);
System.out.println(months[c.get(Calendar.MONTH)]);
}
这里使用DateFormatSymbols
,仅获取月份名称。
我想实现一个包含月份范围的选项卡布局。此范围应包含过去和接下来的 12 个月。
我知道如何获得接下来的 12 个月,但我坚持如何获得最后和接下来的 12 个月。我可以使用 joda 时间库,但我认为这个库对于我的小型 android 应用程序来说太大了。
任何人都可以通过提供一小段代码来帮助我吗?谢谢!
您可以使用日历 class 获取当前月份。然后你可以减去 1 得到上个月的值或加 1 得到下个月。
这是一个示例片段。
Calendar calendar = Calendar.getInstance();
int month = calendar.get(Calendar.MONTH);
calendar.set(Calendar.MONTH, month - 1);
int lastMonth = calendar.get(Calendar.MONTH);
你可以写一个循环来计算过去和接下来的 12 个月。
干杯:)
您可以简单地使用日历 class 实例来完成它,使用 Calendar#add(int 字段, 整数) 喜欢:
//getting month names
DateFormatSymbols dfs = new DateFormatSymbols();
String[] months = dfs.getMonths();
//here is what you need
Calendar c = Calendar.getInstance();
System.out.println(c.getTime().toString());
c.add(Calendar.MONTH, -12);
for (int i = -12; i <=12; i++){
c.add(Calendar.MONTH, +1);
System.out.println(months[c.get(Calendar.MONTH)]);
}
这里使用DateFormatSymbols
,仅获取月份名称。