gpt4 book ai didi

java - 最便宜的java Joda DateTime更新方法是什么?

转载 作者:行者123 更新时间:2023-12-01 22:26:10 26 4
gpt4 key购买 nike

我正在寻找更新 DateTime 对象的时间。我注意到有两种不同的方法可以创建具有更新时间的 DateTime 对象的副本,但我不确定使用哪一种。

使用其中一种比另一种有优势吗?

import org.joda.time.DateTime;

DateTime oldTime = DateTime.now()
newTime = oldTime.withMinuteOfHour(30)

对比

import org.joda.time.DateTime;

DateTime oldTime = DateTime.now()
newTime = oldTime.minuteOfHour.setCopy(30)

最佳答案

谈论性能 - 我真的不太介意,因为这 3 行几乎永远不会成为应用程序中的瓶颈,除非您正在处理一个极端内存密集型应用程序,其中一个额外的对象可能会占用大量内存。一个交易。 (正如你所知,我查看了源代码,发现第二种方法创建了一个额外的 Property 对象)

谈论可读性 - 我当然会选择第一个。因为我必须去 API 看看 setCopy() 做了什么。第一个清楚地显示了意图,即请求一个新的 DateTime 对象,并将 minuteOfHour 设置为传递的值。

这是我不喜欢第二种方法的另一个原因。 minuteOfHour() 方法返回一个 Property:

Property minuteOfHour = date.minuteOfHour();

现在该属性可以分配给date 的任何属性。我稍后可以这样做:

minuteOfHour = date.dayOfYear();

这可以编译,但会更改变量的含义,而不会实际更改名称。这意味着,当您调用 Property#setCopy() 时,您不会真正知道要设置什么属性。

关于java - 最便宜的java Joda DateTime更新方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28746770/

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