我正在尝试为 FMDB 创建一个实用方法,该方法将采用 NSArray 值并根据数组中值的数量返回一个占位符字符串,以在 IN 语句中使用。
我想不出一个优雅的方法来创建这个字符串,我是否缺少一些 NSString 实用方法:
// The contents of the input aren't important.
NSArray *input = @[@(55), @(33), @(12)];
// Seems clumsy way to do things:
NSInteger size = [input count];
NSMutableArray *placeholderArray = [[NSMutableArray alloc] initWithCapacity:size];
for (NSInteger i = 0; i < size; i++) {
[placeholderArray addObject"?"];
}
NSString *output = [placeholderArray componentsJoinedByString","];
// Would return @"?,?,?" to be used with input
Best Answer-推荐答案 strong>
这个怎么样?
NSArray *input = @[@(55), @(33), @(12)];
NSUInteger count = [input count];
NSString *output = [@"" stringByPaddingToLength2*count-1) withString"?," startingAtIndex:0];
// Result: ?,?,?
stringByPaddingToLength 填充给定的字符串(本例中为空字符串)
通过附加模式 @"?," . 中的字符来达到给定的长度
关于ios - 使用 NSArray 值有效地创建占位符模板 NSString,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/19384072/
|