-2

文字列からコンテンツを分割し、コンテンツの最初の文字が引用符であるかどうかを確認してから、それらを2つの文字列に結合するコードを作成しました。1つは引用符で始まり、もう1つは引用符で始まりません。次のコードがありますが、実行すると引用符が検出されないようです。

NSArray *detailTextLabelContentArray = [[NSArray alloc] initWithObjects:@"Some",@"Good",@"Stuff",@"\"Lazy\"", nil];
for (NSInteger index = 0; [detailTextLabelContentArray count] > index; index++)
{
    if ([[detailTextLabelContentArray objectAtIndex:index] substringToIndex:1] != @"\"")
    {
        if (index == 0)
        {
            detailTextLabelContent = [[detailTextLabelContentArray objectAtIndex:index] substringToIndex:1];
        }
        else
        {
            detailTextLabelContent = [NSString stringWithFormat:@"%@; %@",detailTextLabelContent,detailTextLabelContent = [[detailTextLabelContentArray objectAtIndex:index] substringToIndex:1]];
        }
    }
}
NSLog(detailTextLabelContent);

私はここで何か間違ったことをしていますか?

4

2 に答える 2

4

!=を比較するためにまたは他の等式演算子を使用しないでくださいNSString-[NSString isEqualToString:]代わりに使用してください:

![[[detailTextLabelContentArray objectAtIndex:index] substringToIndex:1] isEqualToString:@"\""]

等価演算子は、オブジェクトの等価ではなく、ポインターの等価のみを比較します。

于 2013-01-05T06:00:13.727 に答える
1
 NSString *str=@"\"hello";
 NSRange range={0,1};
[[str substringWithRange:range] isEqualToString:@"\""];
于 2013-01-05T06:17:36.010 に答える