雖然這篇nil是什麼鄉民發文沒有被收入到精華區:在nil是什麼這個話題中,我們另外找到其它相關的精選爆讚文章
在 nil是什麼產品中有1篇Facebook貼文,粉絲數超過2萬的網紅紀老師程式教學網,也在其Facebook貼文中提到, [iOS Programming] 什麼是 Key-Value Coding? 剛剛收到班上同學的來信,說他在網路上看到一個名詞,叫 Key-Value Coding。問我什麼是 Key-Value Coding。由於這個主題比較冷僻,用到的機會也不能算多。在只有 48 小時得把所有 iOS SD...
同時也有1部Youtube影片,追蹤數超過6,210的網紅SHIO 郭修彧,也在其Youtube影片中提到,你知道SHIO的盲點是什麼嗎? 看過這支花絮,你就會瞭解了~ 期許每個人都能夠打破自己的盲點! 《盲點》MV ?https://youtu.be/0fcRvsRM3pc 【盲點】?https://shio.lnk.to/qYaTNJeX...
nil是什麼 在 NiL Instagram 的最讚貼文
2021-09-10 22:56:01
#理直氣壯大聲告訴你女友❗️ 這不是什麼你亂買的怪獸!這是神 情懷無限的極上收藏珍品。 自己當然已先買好一套😊 到時再拍開箱給各位欣賞 #順便開團 @nil_toys_ 隨時完售別考慮太久 [ 有興趣的留言+1 傳連結給你🔗 ] 遊☆戲☆王 日本限量正品 三幻神「神之卡」實體化雕塑 天空龍 預...
nil是什麼 在 NiL Instagram 的最佳貼文
2020-11-02 15:59:35
#ETERNITY 20FW COLLECTION @eternityita.official #正品總代理 👌質感與高級氣場展現的必需品之一 ETERNITY 20FW 重磅設計毛呢長款廓形大衣 如果要問深秋裡優雅,有氣場的單品是什麼?那我想大衣絕對是榜上有名 雖然已經是深秋時,不過溫度卻...
nil是什麼 在 NiL Instagram 的最佳解答
2020-07-09 19:17:45
🔥第一批客訂到貨囉 今天陸續幫各位寄出 感謝各位久等了 實體肯定喜歡😂 還是很多人詢問 加開一單到3/1還沒入手的自己珍惜了👌 上次活動的得獎者公佈在文末 記得看完 #Pornhub 官方Logo全系列單品 官網會員限定下單區🔗 https://bit.ly/38EH4Pw 價格都很平易近人 花小...
-
nil是什麼 在 SHIO 郭修彧 Youtube 的最讚貼文
2019-08-08 22:50:09你知道SHIO的盲點是什麼嗎?
看過這支花絮,你就會瞭解了~
期許每個人都能夠打破自己的盲點!
《盲點》MV ?https://youtu.be/0fcRvsRM3pc
【盲點】?https://shio.lnk.to/qYaTNJeX
nil是什麼 在 紀老師程式教學網 Facebook 的最佳貼文
[iOS Programming] 什麼是 Key-Value Coding?
剛剛收到班上同學的來信,說他在網路上看到一個名詞,叫 Key-Value Coding。問我什麼是 Key-Value Coding。由於這個主題比較冷僻,用到的機會也不能算多。在只有 48 小時得把所有 iOS SDK 教完的壓力下,這個主題被我捨棄了。沒想到同學們還是很用功啊!看來我不講是不行的了(所以說,出來混,一定要還的...)。
先做個定義吧:「Key-Value Coding 就是一種可以用『字串』,來存取物件內某個『屬性欄位』的技巧」。
假設你有一個類別叫做「People」,裡面有兩個屬性欄位「name」與「addr」定義如下:
@interface People : NSObject
{
NSString *name;
NSString *addr;
}
@property NSString *name;
@property NSString *addr;
@end
然後你用 People 宣告了一個名為 robert 的物件,並指定初值給它。如下所示:
People *robert = [[People alloc] init];
robert.name = @"Robert";
robert.addr = @"台北市忠孝東路 1 號";
若你要存取「name」與「addr」屬性,你得這麼寫:
NSLog(@"%@", robert.name); // 印出 robert 物件 name 屬性內容 --> "Robert"
NSLog(@"%@", robert.addr); // 印出 robert 物件 addr 屬性內容 --> "台北市忠孝東路..."
使用 Key-Value Coding,你可以這麼存取屬性值:
NSLog(@"%@", [robert valueForKey:@"name"]); // 存取到 robert 內的 name 欄位。
你有沒有注意到,欄位名稱「name」被字串化了!也就是說,只要你把 "name" 改為 "addr",抓到的欄位值就是 robert.addr 的了。
這有什麼好處呢?舉例來說,你製作了一個資料庫 App,有個下拉式清單,列出所有可以讓使用者選擇的欄位名稱。如「姓名」、「住址」...。使用者只要選擇了一個欄位,如:住址,就可以印出當前物件內,住址那一欄。如果你先把「姓名」與對應的欄位名稱「name」、以及「住址」與對應的欄位名稱「addr」…以「鍵值對(Key-Value Pair)」的方式存放好:
Key Value
------------
姓名 name
住址 addr
...
在 Objective-C 內,鍵值對是用 NSDictionary 類別存放的:
NSArray *keys = [[NSArray alloc] initWithObjects: @"姓名", @"住址", …nil];
NSArray *values = [[NSArray alloc] initWithObjects: @"name", @"addr", … nil];
NSDictionary *dic = [[NSDictionary alloc] initWithObjecs:values forKeys:keys];
則 Key 可以拿去當下拉式功能表要顯示的內容。當使用者選擇了其中一項,如:「姓名」,我就可以拿回到「鍵值對」的物件,查到它對應的值是「"name"」。接著,我就可以用所謂的「Key-Value Coding」這招,抓出當前物件姓名欄位的值:
NSLog(@"%@", [robert valueForKey: theValue]); // theValue 代表由「鍵值對」中查到的值「"name"」。
若使用者選擇的是「住址」,則 theValue 會被填入「"addr"」,上述程式碼不用改一個字,照常抓出 robert 物件內住址欄位的值。
您看出「Key-Value Coding」的價值了嗎?萬一 People 類別內有上百個欄位,我要印出特定欄位的值,都是用下列這一道就解決了:
NSLog(@"%@", [robert valueForKey:@"name"]);
不用 Key-Value Coding、把物件的屬性欄位「字串化」的話,想存取特定欄位,你一定得寫一堆 if ~ else:
if (選中的欄位 == 「姓名」)
fieldToBePrinted = robert.name;
else if (選中的欄位 == 「住址」)
fieldToBePrinted = robert.addr;
else
…
這樣,大家知道 Objective-C 內的 Key-Value Coding 是什麼意思了嗎?