SORU
17 EYLÜL 2009, PERŞEMBE


ıPhone - benzersiz değerleri elde NSArray nesneden

NSArray bir özel bir sınıf nesneleri ile oluşturdum. Sınıf 3 (şehir, Eyalet, zip) string özellikleri vardır. array Tüm eşsiz devlet değerleri almak istiyorum.

NSPredicate sınıfı okuma ile yaptım ama bu durumda kullanmak için ne kadar gelemedi. Bulabildiğim tek örnek dize operasyon yapıldı.

Biri bana yardım edebilir misiniz?

CEVAP
17 EYLÜL 2009, PERŞEMBE


Tamamen basit bir liner:

NSSet *uniqueStates = [NSSet setWithArray:[myArrayOfCustomObjects valueForKey:@"state"]];

Hile NSArray valueForKey: yöntemdir. Bu dizi sayesinde (myArrayOfCustomObjects) yineleme, her nesne üzerinde -state yöntemi ve sonuçları bir dizi inşa edecek. Biz o devletlerin ortaya çıkan dizi NSSet çiftleri kaldırmak için oluşturun.


İOS 5 ile başlayan ve X 10.7, OS bu da yeni bir sınıf: NSOrderedSet. Sıralı bir dizi avantajı herhangi çiftleri kaldırmak, ama aynı zamanda göreli düzeni korumak olacaktır.

NSArray *states = [myArrayOfCustomObjects valueForKey:@"state"];
NSOrderedSet *orderedSet = [NSOrderedSet orderedSetWithArray:states];
NSSet *uniqueStates = [orderedSet set];

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • calicoJake

    calicoJake

    29 EKİM 2007
  • Edge-CGI 3D Tutorials and more!

    Edge-CGI 3D

    11 HAZİRAN 2013
  • mist64

    mist64

    30 Mayıs 2006