From: Shota Fukumori Date: 2011-04-25T08:28:52+09:00 Subject: [ruby-dev:43434] [Ruby 1.9 - Feature #4605][Closed] Random#randとKernel#randでRangeを扱えるように Issue #4605 has been updated by Shota Fukumori. Status changed from Open to Closed r31340 でmrknさんのパッチがコミットされたようなのでcloseします。 また、それに対するrdocを r31341 でコミットしました。 ---------------------------------------- Feature #4605: Random#randとKernel#randでRangeを扱えるように http://redmine.ruby-lang.org/issues/4605 Author: Yuya Yaguchi Status: Closed Priority: Normal Assignee: Category: core Target version: Random#randとKernel#randで引数としてRangeを扱えるようにしてほしいです。 Random#randは引数にInteger, Float, Rangeを扱うことができるのに対し、Kernel#rand, Random.randではIntegerしか扱うことができません。 rand 10 #=> 7 rand 7.5 #=> 4 rand 10..20 #=> TypeError: can't convert Range into Integer Random.rand 10 #=> 8 Random.rand 7.5 #=> 3 Random.rand 10..20 #=> TypeError: can't convert Range into Integer Random.new.rand 10 #=> 8 Random.new.rand 7.5 #=> 6.258043599450456 Random.new.rand 10..20 #=> 20 Floatの扱いを変更すると互換性に問題がでてしまいますが、 Rangeを扱えるようにすることでは問題は少ないと思われますし rand(10..20)のように記述できることは便利です。 -- http://redmine.ruby-lang.org