gpt4 book ai didi

java - 日历的添加方法给出了错误的值?

转载 作者:太空狗 更新时间:2023-10-29 15:45:31 26 4
gpt4 key购买 nike

我正在尝试使用 c.add(Calendar.DATE,1) 更改按钮点击的日期。它应该将日期增加 1。问题是当月份更改时,日期增加到 32 而不是预期的 1(一月)。月份更改为 2 月,但日期更改为 32 等等,例如2016 年 2 月 32 日

 final TextView tv_date = (TextView) dialyReportView.findViewById(R.id.datepicker);
@Override
public void onClick(View v) {
Calendar c;
c= Calendar.getInstance();
c.add(Calendar.DATE,1);
SimpleDateFormat df= new SimpleDateFormat("DD-MMM-yyyy");
String nextDate = df.format(c.getTime());
tv_date.setText(nextDate);
}
});

我是编程新手,所以非常感谢您的帮助。谢谢你! :)

最佳答案

问题是您使用的是 D(年中的某天)而不是 d(月中的某天)。例如,以下代码输出 31-Jan-201532-Feb-2015:

 Calendar c = Calendar.getInstance();
c.set(2015, 0, 31);
c.SimpleDateFormat df= new SimpleDateFormat("DD-MMM-yyyy");
System.out.println(df.format(c.getTime()));
c.add(Calendar.DATE,1);
System.out.println(df.format(c.getTime()));

而以下输出 31-Jan-201501-Feb-2015:

 Calendar c = Calendar.getInstance();
c.set(2015, 0, 31);
c.SimpleDateFormat df= new SimpleDateFormat("dd-MMM-yyyy");
System.out.println(df.format(c.getTime()));
c.add(Calendar.DATE,1);
System.out.println(df.format(c.getTime()));

关于java - 日历的添加方法给出了错误的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34591011/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com