時間に追われているので、ここに質問を投稿しようと思います。私はJavaが初めてで、これは非常に初歩的なはずですが、Googleから回答が得られませんでした.
下の2行目はどういう意味ですか?
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
ランダムに生成された数が より小さいか等しい場合は true です0.01
。
まさにその通りです。2 行目は「以下」のテストを実行し、結果を割り当てます。true または false - ブール変数m1
。