有什么方法可以简化这种方法?也许在一个for循环中将&&两个语句一起使用的方法?
// Enable valid decimal buttons
- (IBAction)enableDecimalValues
{
for(UIButton *decimalButton in nonOctalValueCollection)
{
decimalButton.enabled = YES;
[decimalButton setAlpha:1];
}
for(UIButton *decimalButton in nonBinaryValueCollection)
{
decimalButton.enabled = YES;
[decimalButton setAlpha:1];
}
}
最佳答案
本质上,您的代码没有什么“错误”。您所拥有的是清晰;读者可以快速看到并了解正在发生的事情。
替代方案需要分配内存和复制对象,只需要一个循环即可。但是最终,性能会变差(严格来说)。
但是,如果您坚持要这样做的话:
NSMutableArray *buttons = [[[NSMutableArray alloc] initWithArray:nonOctalValueCollection] autorelease];
[buttons addObjectsFromArray:nonBinaryValueCollection];
for(UIButton *decimalButton in buttons)
{
decimalButton.enabled = YES;
[decimalButton setAlpha:1];
}
(如果使用的是ARC,请不要使用
autorelease
。)