我有一个从当日得到次日的方法,需要传入一个String类型的当日数据为参数,然后我要循环调用这个方法将2012年1月1日到2012年12月31日的所有日期数据打印出来,应该怎么写这个for循环语句啊?求教,谢谢了。

解决方案 »

  1.   

    传入一个String类型的当日数据,转换为日期对象,然后循环加一天
      

  2.   

    用java.util.Calendar这个类吧。
    c.set(year,month,day)
    月是从0开始的。
      

  3.   


    public static void main(String args[]) throws Exception {
    print("2012-01-01");
    } private static void print(String date) throws Exception {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Calendar c = Calendar.getInstance();
    c.setTime(sdf.parse(date));
    int year = Integer.parseInt(date.substring(0, 4));
    while (c.get(Calendar.YEAR) == year) {
    System.out.println(sdf.format(c.getTime()));
    c.add(Calendar.DATE, 1);
    }
    }
      

  4.   

    非要写for循环啊!我觉得这个,递归更简单。或者while循环,for循环只适用于遍历,和数的自增长。
      

  5.   

    String yDate="2011-12-31"; //传入你的日期格式
    for(int i=0;i<366;i++){
    String tDate =getnetxDate(yDate); //你的方法
    System.out.println(tDate);
    yDate=tDate ;
    }