java将时间戳对象的值复制到另一个对象
我有一个爪哇的约会。sql。Timestamp对象(变量->;confirmedDeliveryDate),我想创建一个不同的对象并在其中添加几天。我创建了ts作为一个不同的时间戳变量,并使用了以下逻辑。我能够成功添加天数。但一旦ts更新为新时间,confirmedDeliveryDate也会更新为新日期。当我为ts创建了一个新对象时,为什么要更新confirmedDeliveryDate。请为同样的问题提出解决方案
Timestamp ts = new Timestamp(0L);
ts=confirmedDeliveryDate;
Calendar cal = Calendar.getInstance();
cal.setTime(ts);
cal.add(Calendar.DAY_OF_WEEK, 5);
ts.setTime(cal.getTime().getTime());
ts = new Timestamp(cal.getTime().getTime());
# 1 楼答案
通过编码
您扔掉了新创建的时间戳,并将其替换为对
confirmedDeliveryDate
的引用因此,现在ts和confirmedDeliveryDate是一个且相同的,通过对其中一个调用setTime,两个变量名(引用相同的对象)的值都会改变
试着这样做: