在Spring Expression Language中将随机数转换为整数

时间:2018-12-21 00:30:40

标签: java spring spring-el

我正在使用春季计划作业,并且想通过输入Eigen::ArrayXXf m(5, 5); for (int i = 0; i < 5; i++) { Eigen::VectorXf vec(5); vec << i, i + 1, i + 2, i+3, i+4; //fill m row wise // in matlab I will do something like m(i,:) = vec; // in numpy this will looks like m[i:] = vec; // that means when i is 0 m looks like // [ 0 1 2 3 4 5 // - - - - - - // - - - - - - // - - - - - - // - - - - - -] } 来随机延迟该作业。我可以生成随机数,但该值为initialDelayString = "#{T(java.lang.Math).random() * 10000 }"值(例如4242.423422432)

如何使用SpEL将值转换为long

1 个答案:

答案 0 :(得分:0)

首先,根据返回类型Math.random(),当前值不是long,而是double

此外,您始终可以通过调用Doubleint转换为.intValue(),例如:

    Double someValue = 2.56;
    int nearlyTheSame = someValue.intValue();
    System.out.println(nearlyTheSame);

所以您的Spring表达式可能是:

  #{(T(java.lang.Math).random() * 10000).intValue()}