山姆的編程實作分享。。。

Sam Blog, Sam Sharing, Sam Studio

2014年12月4日

Swift Programming - Tuples type (多元組 / 元組)


除了一般我們熟悉的資料型態外, Swift 加入了兩項Objective-C沒有的資料型態
1. Optional (選項型態)
2. Tuples (中文翻譯為 "多元組" or  "元組")

在iOS Computer Language 的世界,Tuples或許是新成員, 但是在Computer Language 的世界早已經可以看到它的足跡, 如C#, Python.

以下是它的語法定義:

從語法的定義可以知道它的宣告方式是由零到多種資料型態用分號分開再由小括號包覆的資料型態.

那Tuples要用在哪?就如 "Swift Programming Language" 文中所說的
Tuples are particularly useful as the return values of functions; Tuples are useful for temporary groups of related values. They are not suited to creation of complex data structures.

也就說,當你想回傳的參數不是單一值又不想定義ㄧ個資料結構時就可以使用Tuples.

另外,你也可以為每一個element命名
You can also name the elements of a tuple type and use those names to refer to the values of the individual elements. An element name consists of an identifier followed immediately by a colon (:).

Tuples常被用在錯誤的處理;
我們可以設想這樣的情境,當我們在處理error code的時候,如果只是回傳數字,對於程式設計員是足夠的且很好處理,但是對於終端的維修人員是可讀性低且必須查表才知道機器錯誤的原因,這是很不好的ㄧ種的設計; 相反的, 如果我們可以同時回傳字串的話那就比較符合人性.


資料參考來自:
Apple Inc. The Swift Programming Language.

熱門文章