在scala中为日期添加天数
我创建了一个方法,可以编写在scala中为日期添加天数,scala,Scala,我创建了一个方法,可以编写15.jan、4.feb、20.dec,等等来创建表示当前年份日期的LocalDate对象 object DateImplicits { import DateImplicits._ import java.time.LocalDate import java.time.temporal.ChronoUnit implicit class RichDate(day:Int){ def jan():LocalDate = LocalDate.of(
15.jan、4.feb、20.dec
,等等来创建表示当前年份日期的LocalDate对象
object DateImplicits {
import DateImplicits._
import java.time.LocalDate
import java.time.temporal.ChronoUnit
implicit class RichDate(day:Int){
def jan():LocalDate = LocalDate.of(2016,1,day)
def jan(year:Int):LocalDate = LocalDate.of(year,1,day)
def feb():LocalDate = LocalDate.of(2016,2,day)....}
}
但是,我正在尝试编写一种方法,可以在日期中添加天/月/年
换句话说,如果x是LocalDate,我应该能够在中添加天、月和年
以下方式:x+10.天,x+2.个月,x+5.年
我知道我需要两个隐式类,但我不确定如何填充该方法。有一篇帖子提供了线索,但我还是迷路了:
implicit class RichLocalDate(d:LocalDate) =???
implicit class RichInt(n:Int) = ???
我怎样才能做到这一点呢?您已经完成了大部分工作,您只需要为
LocalDate
创建隐式类
(与隐式类Int
相同),例如:
如果您想在
Int class
中绑定day
,month
,year
方法,那么您应该使用integer.day/month/year的隐式类,您还应该保留Int隐式类
,这样类似于隐式类RichInt(n:Int)=def??
implicit class RichLocalDate(d:LocalDate) {
def +(d2: LocalDate) = ... //overloadding for +
}