java.sql.time无法正常工作吗?
这是我的代码
Time lowertime=new Time(date.getTime());
lowertime.setHours(lowertime.getHours()-11);
System.out.println(lowertime);
Time uppertime=lowertime;
uppertime.setHours(lowertime.getHours()+1);
System.out.println(uppertime);
System.out.println(lowertime);
获得的结果
02:11:13
03:11:13
03:11:13
结果应为:
02:11:13
03:11:13
02:11:13
我搜索了java文档,并且不推荐使用它。想要获得1小时或(比如说58分钟)的时间范围。
我使用的是java,Hibernate Framework和MySql数据库。对我来说,这是最好的选择。
答案 0 :(得分:3)
Time uppertime=lowertime;
由于上面的行,uppertime和lowertime是对同一对象的两个引用。每次修改一个,你也修改另一个,因为它们实际上是一个唯一的对象。您需要创建一个副本:
Time uppertime = new Time(lowertime.getTime());