SEL setterMethod = NSSelectorFromString(
[NSString stringWithFormat:
@"set%@%@",
[[key substringToIndex:1]uppercaseString],
[key substringFromIndex:1]
]
);
would do the trick if you can guarantee that key is at least 1 character long.