iOS應用開發18 物件和字典之間的轉換

2021-06-26 14:02:42 字數 1357 閱讀 7872

oc物件和字典之間的轉換是經常用到的功能,從網路獲得的json資訊轉化為了dictionary,然後需要轉化為物件;同樣,將物件通過json傳遞到遠端,得先轉化為字典物件。

1.字典轉化為物件的方式很簡單

#import /**

* 模型 latest 2014-10-24

*/@inte***ce photo : nsobject

/** * **編號

*/@property (nonatomic, assign) nsinteger photoid;

/** * **資料流

*/@property (nonatomic, copy) nsstring *photoimg;

/** * 所在相簿的編號

*/@property (nonatomic, assign) nsinteger storeid;

/** * **文字描述(30-150字)

*/@property (nonatomic, copy) nsstring *photodiscription;

/** * 是否發布

*/@property (nonatomic, assign, getter = ispublish) bool publish;

/** * **在相簿中的排列順序

*/@property (nonatomic, assign) nsinteger ordernum;

- (instancetype)initwithdict:(nsdictionary *)dict;

+ (instancetype)photowithdict:(nsdictionary *)dict;

@end

上面的兩個方法可以將字典轉化為物件,具體實現如下:

#import "photo.h"

@implementation photo

- (instancetype)initwithdict:(nsdictionary *)dict

return self;

}+ (instancetype)photowithdict:(nsdictionary *)dict

- (void)setnilvalueforkey:(nsstring *)key

- (void)setvalue:(id)value forundefinedkey:(nsstring *)key

另外兩個方法是特殊情況的處理

2.物件轉化為字典的方式也不難

新增如下方法即可搞定:(keys是你想要得到的屬性名)

- (nsdictionary *)todictionary
就這樣搞定了。

ios開發之OC基礎 類和物件

本系列的文章主要來自於個人在學習前鋒教育 歐陽堅老師的ios開發教程之oc語言 一定要明確乙個要從事的方向,要不然就會感到迷茫。學習ios開發,並且從事ios開發這個行業,這就是我的選擇。看到我的部落格系列文章,其中大多是關於c qt linux網路程式設計 opengl unity3d等方面。從表...

6 物件特性之建構函式和析構函式

物件的初始化和處理也是兩個非常重要的安全問題,c 利用建構函式和析構函式解決上述問題。這兩個函式會被編譯器自動呼叫,如果我們不提供構造和析構,編譯器會提供編譯器提供的建構函式和析構函式是空實現。include using namespace std 物件的初始化和處理 class person pu...

PHP 5 0物件模型深度探索之屬性和方法

乙個物件例項的屬性是變數,就像php的其他變數一樣。但是你必須使用 運算子來引用它們。不需要在屬性前使用美元符 可以聯用 如果乙個物件的屬性包含了乙個物件,你可以使用兩個 運算子來得到內部物件的屬性.你甚至可以用雙重引用的字串來放置這些表示式.下面的例子中,物件house中的屬性room包含了一組r...