我时间紧迫,以为我会在这里发布我的查询。我是Java的新手,这应该是非常基础的,但我无法从谷歌那里得到任何答案。
下面的第二行是什么意思?
double mutatePercent = 0.01;
boolean m1 = rand.nextFloat() <= mutatePercent;
我认为&lt; =意味着小于或等于,但在上述用法中似乎并非如此。 m1的价值是如何决定的?
谢谢!
答案 0 :(得分:4)
该行
boolean m1 = rand.nextFloat() <= mutatePercent;
的格式为
boolean m1 = <some boolean value>
和
rand.nextFloat() <= mutatePercent;
会产生一个布尔值,因此比较rand.nextFloat() <= mutatePercent
的结果会分配给boolean
变量m1
答案 1 :(得分:0)
我认为&lt; =意味着小于或等于
确实如此。
但在上述用法中似乎并非如此。
为什么不呢?
boolean m1 = rand.nextFloat() <= mutatePercent;
将条件“此随机浮点数是否小于或等于0.01
?”的值分配给变量m1
。因此,如果随机生成的数字小于或等于m1
,则0.01
为真。
答案 2 :(得分:0)
这正是它的含义。第二行执行“小于或等于”测试并分配结果 - 即。 true或false - 布尔变量m1
。