QA@IT

containsObjectでうまく判定できない

1639 PV

NSArrayインスタンスをcomponentsJoinedByStringして文字列にしたあと、componentsSeparatedByStringで配列に戻した場合にcontainsObjectでうまく判定できなくて困っています。

以下はサンプルコードです。

NSString *hoge = @"1";
NSString *fuga = @"2";

NSArray *arrayA = @[hoge, fuga];
NSString *stringA = [arrayA componentsJoinedByString:@","];
NSArray *arrayB = [stringA componentsSeparatedByString:@","];

if ([arrayB containsObject:hoge]) { // YESを返して欲しい
  // ...
}

containsObject内部でisEqualが呼ばれてNOが返されているのは理解しているのですが、この問題をどう解決すればいいのかがわかりません。宜しくお願いします。

  • そこに書かれているコードをコピペして実行したら、ちゃんとYESが返ってきますよ。 -
  • あれそうでしたか、お手数おかけしました。実際のコードはコピペできないので、再現しそうなコードにしてみたんですが。。。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。