LV. 20
GP 462

【攻略】CSO lua零基礎小教室(三) 資料型態與表

樓主 misk yrgna1234
GP12 BP-
大家好 我是misk
上次教了大家什麼是函式(function)
也介紹過變數
這次的教學會往這部分深入
不過請放心,這個部分一樣是基礎的一部份

如果您還沒看過之前的教學,請前往傳送門:

資料型態
資料型態很簡單,在第一章中我們其實就接觸過了,就是平常看到的整數、浮點數(如0.01)、字串、布林值(true or false),而我們要對這些資料型態做一些補充。

1.字串
字串是由兩個"所包起來的區域,例如:string = "你好!"。

2.布林值
布林值通常使用在判斷式中,像是 if 1 == 1 then.....,只要會數學的人都知道是true。沒錯,其實在if判斷式中,可以直接這樣寫:
因為程式在判斷時,會用true跟false來決定要不要執行之後用then跟end所包覆的地方,所以可以直接在判斷式中寫true。

然後,我們想介紹一個常見的新東西,and跟or,我們直接介紹它們的寫法。
相信大家都玩過裝置方塊,而有一個邏輯方塊就是or,它的功用就跟圖中的or一模一樣,只要其中有一個是true,這個判斷式就成立。

相反的,我們看個例子。
裡面的or改成了and,經過判斷後就不會執行then與end包住的區域了。

表(table)
講解完比較常見的資料型態後,我們就要講解比較複雜的"表"了,其實也不是複雜,就只是多了一些東西需要記而已。

1.什麼是表?
簡單來說就是一個箱子,裡面可以裝各種不同資料型態的東西,我們舉個例子。
這個list的意思是:它是一個"表(table)",它裝著5個具有整數型態的元素。
請記住,表是用大括號{}來裝元素的。

那我們如何取得裡面的數字呢?
很簡單,從索引值0開始,依序往上加,例如:
list[0] = 1
list[1] = 2
list[2] = 4
list[3] = 8
list[4] = 16
就這樣。

表還有另一種呈現方式,下面是個例子。
差別都在於:每個元素都取了名,遇到這種形式,我們可以這樣取得數字。
list.a = 1
list.b = 2
list.c = 3
list.d = 4
或是
list["a"] = 1
list["b"] = 2
list["c"] = 3
list[''d"] = 4
沒錯,裡面的索引值從原本的01234變成了字串形式。
這樣的取得方式很像是以前生物學到的"界門綱目科屬種",也就是我們可以這樣想像:
"1"這個元素是list屬a種
當然這個層級可以一直往下面加,也就是list.a.aa.aaa.....,是可以一直分層下去的,我們舉個例子。
如果我們要取得30這個數字,我們要這樣取得:list.a.cc,這個東西就是30了,這樣的層級方式就像是在箱子裡面放入小箱子,層次可以變得更多樣化。

CSO API的表
在CSO的API裡面也有出現表,我們舉一些例子。

1.玩家的位置
由x, y, z組成,所以為{x = 0, y = 0, z = 0}。

2.顏色
由r, g, b組成,他們分別是紅、綠、藍,所以為{r = 255, g = 255, b = 255}。

當然不只這些,而且這些數字都是舉例,之後會對這些表做更多描述。

問題
請問要怎麼在圖中取得"香蕉"這個字串呢?

一樣可以在留言去討論喔!基本上有了這些知識就可以學習API了,之後我們就會講解API的內容了。

下一章:
12
-
LV. 1
GP 0
2 樓 wanghaer25 wanghaer25
GP0 BP-
我還以爲是那個絕對武力CSO
0
-
未登入的勇者,要加入 3 樓的討論嗎?
板務人員:

3667 筆精華,10/13 更新
一個月內新增 2
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】