在一个array中有一个model,类似这样:
[
model1.date = 2016.4.12 8:25
model2.date = 2016.4.12 9:20
model3.date = 2016.3.13 8:30
model4.date = 2016.3.11 8:15
model5.date = 2015.2.12 1:20
model6.date = 2015.2.12 2:25
]
现在需要做的是将日期是同一天的放入一个数组中,没有日期相同的也放入一个数组中,最终要得到的数组应该是这样的:
[
[model1,model2],
[model3],
[model4],
[model5,model6],
]
请问,应该如何做?
これは JSON ですか?直接
の項目var keymap={};
し、リストを走査
して keymap[item.date] が未定義かどうかを判断します
はいの場合は配列に割り当てます
そうでない場合はプッシュします
最後にキーマップを走査し、すべての値をリストにプッシュします
まず、model.date のタイプは NSString ですか? それとも NSDate ですか?
リーリーまず、これらの質問は脇に置いて、 で指定されるデータ形式に注目してください。質問者さんは、model.date が NSString 型であると仮定して (NSDate 型の場合は NSString 型に変換されます) というアイデアを提供します。
1. この配列を走査し、最初に model.date から先頭と末尾のスペースを削除します
2. 次に、str の先頭から最初のスペースまでの部分文字列をインターセプトします。たとえば、「2016.4.12 8:25」は「2016.4.12」をインターセプトし、str を比較することで、対応する文字列を配置する場所がわかります。どの配列をモデル化
リーリーデモを書いて検証してください。コードは以下に添付されています
リーリー対応するコンソール出力:

モデルのメモリ アドレスを観察し、問題がないことを確認します。
model.date が NSDate タイプの場合は、model.date を「yyyy-MM-dd」の文字列に変換して、この文字列を比較することもできます。