SORU
30 HAZİRAN 2009, Salı


ObjectForKey ve valueForKey arasındaki fark?

objectForKey valueForKeyarasındaki fark nedir? Belgelere baktım ve bana aynı görünüyorlardı.

CEVAP
30 HAZİRAN 2009, Salı


objectForKey: NSDictionary bir yöntemdir. NSDictionary bir topluluk sınıfı dizinleri kullanmak yerine, kullanması dışında NSArray, anahtar bir öğe ayırt etmeye benzer. Anahtar verdiğiniz rastgele bir dize. İki nesne aynı anahtarı NSArray iki nesne aynı dizin olması gibi).

valueForKey: EP bir yöntemdir. HERHANGİ bir sınıf ile çalışır. valueForKey: özellik adı için bir dize kullanarak erişim sağlar. Eğer bir özellik ile Account Bir Dersim var yani mesela accountNumber aşağıdakileri yapabilirim:

NSNumber *anAccountNumber = [NSNumber numberWithInt:12345];
Account *newAccount = [[Account alloc] init];

[newAccount setAccountNumber:anAccountNUmber];

NSNumber *anotherAccountNumber = [newAccount accountNumber];

EP kullanarak, özellik dinamik olarak erişebilirsiniz:

NSNumber *anAccountNumber = [NSNumber numberWithInt:12345];
Account *newAccount = [[Account alloc] init];

[newAccount setValue:anAccountNumber forKey:@"accountNumber"];

NSNumber *anotherAccountNumber = [newAccount valueForKey:@"accountNumber"];

Bu ifadelerin eşdeğer ayarlar.

Ne düşündüğünüzü biliyorum: wow, ama alaycı bir şekilde. EP o kadar çok faydalı görünmüyor. Aslında, görünüyor "". wordy Ama zamanında bir şeyleri değiştirmek istediğinizde, çok daha başka bir dilde (ama bu sorunun kapsamı dışındadır) zor olan serin bir sürü şey yapabilirsin.

Eğer EP hakkında daha fazla bilgi edinmek istiyorsanız, özellikle Scott Stevenson's blog Google ise birçok dersler vardır. Ayrıca NSKeyValueCoding Protocol Reference kontrol edebilirsiniz.

Bu yardımcı olur umarım.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EmbarkToHeaven

    EmbarkToHeav

    3 EYLÜL 2007
  • Sergio Lafuente Rubio

    Sergio Lafue

    11 Aralık 2008
  • The10HourMan

    The10HourMan

    28 EYLÜL 2012