gpt4 book ai didi

ios - stringByAppendingString 不连接

转载 作者:可可西里 更新时间:2023-11-01 06:19:43 27 4
gpt4 key购买 nike

我正在尝试获取一个字符串数组并获取每个项目并将其放入字符串格式。我写了一个方法来执行此操作,因为我需要将列出的数组值连接到另一个字符串中。由于某种原因,我无法正确列出数组值,返回了一个空字符串。

- (NSString*)listParameters:(NSArray*)params
{
NSString *outputList = @"";

if (params) {
for (int i=0; i<[params count]; i++) {
NSLog(@"%@",[params objectAtIndex:i]);
[outputList stringByAppendingString:[params objectAtIndex:i]];
if (i < ([params count] - 1)) {
[outputList stringByAppendingString:@", "];
}
}
}
NSLog(@"outputList: %@", outputList);
return outputList;
}

第一个日志语句正确地返回一个字符串(所以数组中肯定有一个字符串),但是第二个日志语句只返回“outputList:”。

我尝试让 outputList 开始不仅仅是一个不起作用的空字符串。我还尝试将 [params objectAtIndex:i] 分配给一个字符串然后附加它,也没有用。

我觉得我在这里遗漏了一些明显的东西,但我无法让它发挥作用。

如何让这个字符串数组打印成一个用逗号分隔的字符串?

最佳答案

您可能想使用 NSMutableString而不是使用它的 appendString 方法。 NSString 是不可变的。

- (NSString*)listParameters:(NSArray*)params
{
NSMutableString *outputList = [[NSMutableString alloc] init];

if (params) {
for (int i=0; i<[params count]; i++) {
NSLog(@"%@",[params objectAtIndex:i]);
[outputList appendString:[params objectAtIndex:i]];
if (i < ([params count] - 1)) {
[outputList appendString:@", "];
}
}
}

NSLog(@"outputList: %@", outputList);
return outputList;
}

关于ios - stringByAppendingString 不连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14820508/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com