举个例子,而不是这样写:
NSArray *someArray = @[@"1", @"2", @"3", @"4"];
[someArray enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSString *aString = obj;
// do something
}];
如果您知道块方法中的常量,则可以直接向下转换对象以使其更简洁:
[someArray enumerateObjectsUsingBlock:^(NSString *aString, NSUInteger idx, BOOL *stop) {
// do something
}];
这是否违反任何最佳实践或 oop 原则?