If this is indeed the desired effect, you're much better off writing a - 
(NSArray *)arrayByRandomlyOrderingObjects in an NSArray category, and then 
calling [[mySet allObjects] arrayByRandomlyOrderingObjects];.

Bob

On 25 May 2010, at 17:54, Dave DeLong wrote:

> Ah, I see;  you don't want to provide the same object twice in a row.  If 
> that's the case, is it really "random"? ;)
> 
> Dave
> 
> On May 25, 2010, at 10:52 AM, Dave DeLong wrote:
> 
>> What about something like:
>> 
>> @implementation NSSet (Random)
>> 
>> - (id) randomObject {
>> NSArray * allObjects = [self allObjects];
>> if ([allObjects count] == 0) { @throw ...; }
>> return [allObjects objectAtIndex:(arc4random() % [allObjects count])];
>> }
>> 
>> @end
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/tom.davie%40gmail.com
> 
> This email sent to tom.da...@gmail.com

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to