gpt4 book ai didi

java - 两个日期之间的 Scala 随机日期

转载 作者:行者123 更新时间:2023-11-29 07:29:25 25 4
gpt4 key购买 nike

我正在尝试编写一个方法,它采用两个 java.util.Date 作为参数,并在 Scala 中返回这两个之间的随机 java.util.Date .但是,我每次都得到相同的虚拟结果。我的代码有什么问题?

备注:

randomDateBetween(new Date(2017, 1, 1), new Date(2018, 1, 1)) 返回 Tue Jun 12 09:36:00 EET 3917一直喜欢

代码:

 def randomDateBetween( firstDate : Date, secondDate : Date) : Date =
{
val ratio = new Random().nextInt(100);

val difference = (secondDate.getTime - firstDate.getTime)

val surplusMillis = (difference * (ratio / 100.0)).asInstanceOf[Long]

val cal = Calendar.getInstance()

cal.setTimeInMillis(surplusMillis + firstDate.getTime)

return cal.getTime()
}

我修好了,谢谢大家。错误的原因是 java.util.Date 被弃用。我像这样更改了我的方法调用并且它工作得很好:

val date1 = Calendar.getInstance
val date2 = Calendar.getInstance

date1.set(2017, 1, 1)
date2.set(2018, 1, 1)

randomDateBetween(date1.getTime, date2.getTime)

最佳答案

您需要像这样为 Random 对象播种:

Random.setSeed(System.currentTimeMillis())
val ratio = new Random().nextInt(100)

关于java - 两个日期之间的 Scala 随机日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45091019/

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