GROOVY如何将随机数修剪成整数
我希望将随机生成的数字缩减为整数 我试过各种方法,但似乎都不管用。我最近的尝试如下:GROOVY如何将随机数修剪成整数,groovy,soapui,Groovy,Soapui,我希望将随机生成的数字缩减为整数 我试过各种方法,但似乎都不管用。我最近的尝试如下: def som = Math.random() * totalContacts log.info som som.toInteger() log.info som def cleaned = parseInt(som) log.info cleaned (我在每个步骤后都会登录到控制台,只是为了检查结果。) 当我执行上述代码时,出现以下错误- groovy.lang.MissingMethodExcept
def som = Math.random() * totalContacts
log.info som
som.toInteger()
log.info som
def cleaned = parseInt(som)
log.info cleaned
(我在每个步骤后都会登录到控制台,只是为了检查结果。)
当我执行上述代码时,出现以下错误-
groovy.lang.MissingMethodException:否
方法签名:
Script69.parseInt()适用于
参数类型:(java.lang.Double)
值:[44.405365593296]可能
解决方案:打印(java.lang.Object),
打印(java.io.PrintWriter),
打印(java.lang.Object)
谢谢,
理查德问题似乎是在这条线上
def cleaned = parseInt(som)
som
是一个Double
方法,没有parseInt
方法接受Double
参数。您还没有显示您的导入,但我猜您已经静态导入了Integer.parseInt
,并且正在尝试调用它
以下改变应该有效:
def som = Math.random() * totalContacts
log.info som
som.toInteger()
log.info som
def cleaned = som.toInteger()
log.info cleaned
但是,这里您要做的似乎是生成一个范围为0..totalContacts
(包括两个)的随机整数。如果是这样,以下是一个更简单的解决方案:
import org.apache.commons.lang.math.RandomUtils
import java.util.Random
Integer som = RandomUtils.nextInt(new Random(), totalContacts + 1)
最简单的方法是:
def som = Math.random() * totalContacts as int
log.info som
大家好,我终于成功了:def som=Math.random()*totalContacts randomSeed=som.toInteger()log.info randomSeed,但也会尝试您的回复!干杯