我想设置Joda-Time中的小时,分钟和秒钟。但是当我设定它不改变财产。如何使用Joda-Time设置Java中的Time属性
这里是我的代码:
import org.joda.time.DateTime;
public class JodaAkbar
{
public static void main(String args[])
{
DateTime dt = new DateTime();
System.out.println("Before:"+dt);
dt.hourOfDay().setCopy(5);
dt.minuteOfDay().setCopy(20);
dt.secondOfDay().setCopy(0);
System.out.println("After:"+dt);
}
}
这里是输出。
Before:2015-04-01T11:01:38.277+11:00
After:2015-04-01T11:01:38.277+11:00
我得到相同的输出。这里发生了什么问题?
编辑:
基本上,我想所示下面的代码做同样的事情。由于下面的代码在24小时制格式下无法正常工作,我转而使用Joda-Time。
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR, 13);
cal.set(Calendar.MINUTE, 25);
cal.set(Calendar.SECOND, 0);
AKAIK'DateTime'是不可变的,它不能被自己改变,但'setCopy'将返回一个带有更新值的'DateTime'的新实例。 'DateTime after = dt.houtOfDay()。setCopy(5)'... – MadProgrammer 2015-04-01 00:13:43