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