Für die Implementierung von "group by values" in NSMutableArray?
Ich bin mit NSMutableArray. Ich möchte zum abrufen der Werte von Datum, wie wir es tun in SQL group by "log_date"
.
logMuArray (
{
"log_currenttime" = "4:30pm";
"log_date" = "11.12.2011";
"log_duration" = "1:30";
},
{
"log_currenttime" = "4:33pm";
"log_date" = "11.12.2011";
"log_duration" = "2:21";
},
{
"log_currenttime" = "4:40pm";
"log_date" = "11.12.2011";
"log_duration" = "5:30";
},
{
"log_currenttime" = "7:30pm";
"log_date" = "12.12.2011";
"log_duration" = "1:30";
},
{
"log_currenttime" = "7:33pm";
"log_date" = "12.12.2011";
"log_duration" = "2:21";
},
{
"log_currenttime" = "7:40pm";
"log_date" = "12.12.2011";
"log_duration" = "5:30";
},
{
"log_currenttime" = "07:16pm";
"log_date" = "19.12.2011";
"log_duration" = "0:07";
},
{
"log_currenttime" = "7:31pm";
"log_date" = "19.12.2011";
"log_duration" = "0:04";
},
{
"log_currenttime" = "7:33pm";
"log_date" = "19.12.2011";
"log_duration" = "0:03";
},
{
"log_currenttime" = "7:33pm";
"log_date" = "19.12.2011";
"log_duration" = "0:06";
},
{
"log_currenttime" = "7:35pm";
"log_date" = "19.12.2011";
"log_duration" = "0:05";
}
)
**So, habe ich gerade durchgeführt....
NSLog(@"logMuArray %@",[logMuArray valueForKey:@"log_date"]);
Aber ich wollen, Holen Sie sich das EINZIGARTIGE Daten nur.**
Ich habe nachgedacht über NSPredicate oder Veränderlich Eingestellt etc...
logMuArray (
"11.12.2011",
"11.12.2011",
"11.12.2011",
"12.12.2011",
"12.12.2011",
"12.12.2011",
"19.12.2011",
"19.12.2011",
"19.12.2011",
"19.12.2011",
"19.12.2011"
)
Vielen Dank im Voraus.....
EDIT:
Ich habe auch gehört über "@distinctUnionOfObjects"
......
- Ist es möglich, die zur eindeutigen Identifizierung von Objekten, basierend auf zwei oder mehr Tasten mit der gleichen Logik?
- Deine Frage ist gut, besser, Sie sollten eine Frage stellen, da der code ist auch erforderlich, bitte Fragen Sie Ihre Frage in stack-überlauf. Nebeneinander habe ich nicht viel Ahnung auf diesem, aber ich brauche eine Zeit, um es zu lösen. Werde versuchen, es zu lösen, sondern benötigen einen code für die Lösung. Besser du postest deine Frage auf stack overflow mit code. Dank
- es könnte Ihnen helfen, Neuerstellung eines NSArray durch die Gruppierung von Objekten w.r.t alle übereinstimmenden Schlüssel in jedem Wörterbuch in das array
Du musst angemeldet sein, um einen Kommentar abzugeben.
Shanti, die Antwort ist nah. Sie wollen, verwenden Sie die Schlüssel-Wert-Codierung Sammlung Betreiber
@distinctUnionOfObjects
. Platzieren Sie den operator unmittelbar vor der Taste, die Sie wollen, es zu beeinflussen, als wenn es ein Teil des Schlüssels Pfad, auf den Sie zugreifen:Beachten Sie die Verwendung von
valueForKeyPath:
, nichtvalueForKey:
ersteres ist eine Methode, in der Key-Value-Coding protocol, und ermöglicht den Zugriff auf beliebige Tiefe von Parametern. Der Pfad der Schlüssel ist einNSString
aus Punkt getrennte Tasten. Das Ergebnis der einzelnen Schlüssel-lookup verwendet wird, wiederum, um den nächsten Schlüssel (beginnend mit dem original-Empfänger); standardmäßig, wirdvalueForKey:
heißt einfach bei jedem Schritt.Sollten Sie verwenden
NSSet
für EINZIGARTIGE Gegenstände wie :Können Sie KVC für diese.
Bearbeiten: die Bearbeitung dieser wrt Josh ' s Reaktion
Versuchen, diese Logik könnte Ihnen helfen,
Können Sie integrieren eine Reihe
Hier finden Sie einige Beispiel-code
und hier ist die Ausgabe