ruby - 임의의 부울 값을 반환하는 가장 좋은 방법



(3)

가짜 시드 데이터를 만들 때이 값을 사용하여 true 또는 false 를 반환했습니다. 누군가가 true 인지 false 인지를 반환하는 더 나은,보다 간결한 또는 장황한 방법이 있는지 궁금해 할뿐입니다.

rand(2) == 1 ? true : false

나는 rand 를 사용하기를 좋아한다.

rand < 0.5

편집 :이 답변은 rand > 0.5 이지만 rand < 0.5 는 더 기술적으로 정확합니다. rand반 개방 범위 [0,1]에서 결과를 반환하므로 < 사용하면 반 개방 범위 [0,0.5]와 [0.5,1]가 동일한 확률로 이어집니다. > 사용하면 닫힌 범위 [0,0.5]와 개방 범위 (0.5,1)의 UNEQUAL 확률로 연결됩니다.


나는 보통 다음과 같은 것을 사용한다.

rand(2) > 0

to_boolean 메소드를 작성하기 위해 Integer를 확장 할 수도 있습니다.

class Integer
  def to_boolean
    !self.zero?
  end
end

Array#sample 사용하는 선언적 스 니펫 :

random_boolean = [true, false].sample




ruby