系统时间问题

你好毒你好毒 2011-08-29 10:51:40
我要获得当前月的前一年,比如去年的9月到今年的8月,并且每一个的时间都要打出来

如:2010-9
2010-10
2010-11
……
2011-8


不要写死的,你们的懂的!

求思路,有代码更好。。。
...全文
131 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
huanhuaxi_ 2011-08-29
  • 打赏
  • 举报
回复
学习了,解决了我的问题。
youcity 2011-08-29
  • 打赏
  • 举报
回复
// 取系统时间
Calendar today = Calendar.getInstance();
// 计算用时间
Calendar calDay = Calendar.getInstance();
// 取去年今天
calDay.add(Calendar.YEAR, -1);
// 循环打印各个月
while (calDay.before(today)) {
SimpleDateFormat ftime = new SimpleDateFormat("yyyy年MM月");
System.out.println(ftime.format(calDay.getTime()));
// 顺序加一月
calDay.add(Calendar.MONTH, 1);
}
你好毒你好毒 2011-08-29
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 izard999 的回复:]
Calendar类可以满足你的需求的!

Java code

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar c = Calendar.getInstance();
Date now = c.getTime();
for(int i = -11; i <……
[/Quote]

帅呆了,谢谢了!!!
风尘中国 2011-08-29
  • 打赏
  • 举报
回复
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;

/**
* Created by IntelliJ IDEA.
* User: admin
* Date: 2011-8-29
* Time: 11:02:13
* To change this template use File | Settings | File Templates.
*/
public class MonthUtil {
private static DateFormat df=new SimpleDateFormat("yyyy-MM");

public static ArrayList<String> getLastYearMons(){
ArrayList<String> result=new ArrayList<String>();
// Calendar now=Calendar.getInstance();
Calendar lastYear=Calendar.getInstance();
lastYear.add(Calendar.YEAR,-1);
for(int i=0;i<12;i++){
lastYear.add(Calendar.MONTH,1);
Date tmp=lastYear.getTime();
String tmpStr=df.format(tmp);
System.out.println(tmpStr);
result.add(tmpStr);
}
return result;
}

public static void main(String[] args){
MonthUtil.getLastYearMons();
}
}
izard999 2011-08-29
  • 打赏
  • 举报
回复
Calendar类可以满足你的需求的!

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
Calendar c = Calendar.getInstance();
Date now = c.getTime();
for(int i = -11; i <= 0; i++) {
c.add(Calendar.MONTH, i);
Date before = c.getTime();
System.out.println(sdf.format(before));
c.setTime(now);
}
flyoversky 2011-08-29
  • 打赏
  • 举报
回复
去看看Calendar的API就知道怎么做了

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧