I can test for the presence of a key in an NSDictionary in two ways:

```
BOOL containsKey = [[dictionary allKeys] containsObject:foo];

BOOL containsKey = ([dictionary objectForKey:foo] != nil);

```

which method is faster, and why?