在一个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],
]
请问,应该如何做?
Est-ce du JSON ? Directement
var keymap={};
puis parcourez la liste
pour déterminer si le keymap[item.date] n'est pas défini
Si oui, attribuez-le à un tableau
Sinon, appuyez sur l'élément dans
Parcourez enfin un keymap et poussez toutes les valeurs dans une liste
Tout d'abord, votre model.date est-il de type NSString ou NSDate ? Le format de date n'est-il pas "aaaa.MM.jj HH.mm"
Mettez d'abord de côté ces questions et concentrez-vous sur le format de données donné par le ? questioner. , fournit une idée, en supposant que model.date est de type NSString (s'il est de type NSDate, il est converti en type NSString).
1. Parcourez ce tableau, supprimez d'abord les espaces de début et de fin de model.date
2. Ensuite, interceptez la sous-chaîne de la tête au premier espace de str, par exemple : "2016.4.12 8:25" intercepte "2016.4.12", et puis en comparant str, vous savez où mettre le correspondant. modéliser quel tableau
Écrivez une démo pour vérifier, le code est joint ci-dessous
Sortie console correspondante :

Observez l'adresse mémoire du modèle et vérifiez qu'il n'y a pas de problème.
Si model.date est de type NSDate, vous pouvez également convertir model.date en une chaîne de "aaaa-MM-jj", puis comparer cette chaîne. J'espère que ma réponse vous sera utile.