欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)邀請碼778899分享:java Lua語法基本使用

柚子快報(bào)邀請碼778899分享:java Lua語法基本使用

http://yzkb.51969.com/

? 簡介:java系列技術(shù)分享(?持續(xù)更新中…?) ? 初衷:一起學(xué)習(xí)、一起進(jìn)步、堅(jiān)持不懈 ? 如果文章內(nèi)容有誤與您的想法不一致,歡迎大家在評論區(qū)指正? ? 希望這篇文章對你有所幫助,歡迎點(diǎn)贊 ? 收藏 ?留言 ?

? 更多文章請點(diǎn)擊

文章目錄

一、Lua簡介二、Lua安裝2.1 Hello World 入門

三、數(shù)據(jù)類型四、基本語法4.1 注釋4.2 交互式編程4.3 字符串連接4.5 循環(huán)4.5.1 while 循環(huán)4.5.2 for 循環(huán)4.5.3 repeat...until循環(huán)4.5.4 循環(huán)控制語句

4.6 函數(shù)4.7 流程控制4.7.1 if 語句4.7.2 if...else 語句

4.8 邏輯運(yùn)算符

一、Lua簡介

官網(wǎng):https://www.lua.org Lua 教程 | 菜鳥教程:https://www.runoob.com/lua/lua-tutorial.html LuatOS 文檔:https://wiki.luatos.com/ LuatOS 在線模擬 - lua在線測試 :https://wiki.luatos.com/_static/luatos-emulator/lua.html Lua 是一種輕量小巧的腳本語言,用標(biāo)準(zhǔn) C 語言編寫并以源代碼形式開放,其設(shè)計(jì)目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴(kuò)展和定制功能。Lua作為一種腳本語言(解釋型語言),號稱性能最高的腳本,被廣泛應(yīng)用在很多需要性能的地方,比如nginx,游戲腳本,OpenResty等等。在我的項(xiàng)目agent中,使用lua腳本實(shí)現(xiàn)了任務(wù)處理邏輯。任務(wù)執(zhí)行器在接收到任務(wù)時(shí)選擇對應(yīng)的lua腳本執(zhí)行任務(wù),與執(zhí)行器進(jìn)行解耦,同時(shí)支持熱更新。

二、Lua安裝

Lua的安裝非常簡單,如果是Linux系統(tǒng),則將make all test替換掉make linux test

curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz

tar zxf lua-5.3.5.tar.gz

cd lua-5.3.5

make linux test

2.1 Hello World 入門

新建hello.lua文件 在其中添加 print(“Hello World”) 運(yùn)行 lua hello.lua 測試成功

三、數(shù)據(jù)類型

數(shù)據(jù)類型描述說明nil這個(gè)最簡單,只有值nil屬于該類,表示一個(gè)無效值(在條件表達(dá)式中相當(dāng)于false)。nil 作比較時(shí)應(yīng)該加上雙引號boolean包含兩個(gè)值:false和true。Lua 把 false 和 nil 看作是"假",其他的都為"真"number表示雙精度類型的實(shí)浮點(diǎn)數(shù)string字符串由一對雙引號或單引號來表示也可以用 2 個(gè)方括號 “[[]]” 來表示"一塊"字符串。使用 # 來計(jì)算字符串的長度function由 C 或 Lua 編寫的函數(shù)tableLua 中的表(table)其實(shí)是一個(gè)"關(guān)聯(lián)數(shù)組"(associative arrays),數(shù)組的索引可以是數(shù)字或者是字符串。在 Lua 里,table 的創(chuàng)建是通過"構(gòu)造表達(dá)式"來完成,最簡單構(gòu)造表達(dá)式是{},用來創(chuàng)建一個(gè)空表。

可以使用type函數(shù)測試給定變量或者值的類型。

nil

nil 類型表示空值,給全局變量賦值 nil 等同于把它們刪除。 nil 作比較時(shí)應(yīng)該加上引號:

if (type(nil)==nil) then

print(true)

else

print(false)

end

if (type(nil)=="nil") then

print(true)

else

print(false)

end

輸出:

false

true

四、基本語法

4.1 注釋

兩個(gè)減號是單行注釋: --注釋 多行注釋 --[[ 注釋 --]]

4.2 交互式編程

Lua 交互式編程模式可以通過命令 lua -i 或 lua 來啟用:

lua -i

Lua 5.4.6 Copyright (C) 1994-2023 Lua.org, PUC-Rio

4.3 字符串連接

可以使用操作符…(兩個(gè)點(diǎn))

print("hello".."world")

循環(huán)變量

-- 字符串

local str = 'Hello'

-- 數(shù)字

local num = 21

-- 布爾類型

local flag = true

-- 數(shù)組

local arr = {'java','python','lua'}

-- table

local map = {name = 'Jack',age = 12}

訪問

--訪問數(shù)組 ,lua數(shù)組的角標(biāo)從1開始

print(arr[1])

-- 訪問 table

print(map['name'])

print(map.name)

4.5 循環(huán)

4.5.1 while 循環(huán)

local a = 10

while (a < 20)

do

print("value of a:", a)

a = a + 1

end

輸出:

value of a: 10

value of a: 11

value of a: 12

value of a: 13

value of a: 14

value of a: 15

value of a: 16

value of a: 17

value of a: 18

value of a: 19

4.5.2 for 循環(huán)

數(shù)值for循環(huán)

for var=exp1,exp2,exp3 do

<執(zhí)行體>

end

var 從 exp1 變化到 exp2,每次變化以 exp3 為步長遞增,并執(zhí)行一次 “執(zhí)行體”。exp3 是可選的,如果不指定,默認(rèn)為1。

for i = 10, 1, -1 do

print(i)

end

輸出

10

9

8

7

6

5

4

3

2

1

遍歷數(shù)組

local arr = {'java','python','lua'}

--遍歷數(shù)組

for index,value in ipairs(arr) do

print(index,value)

end

遍歷table

local map = {name = 'Jack',age = 12}

--遍歷table

for key ,value in pairs(map) do

print(index,value)

end

4.5.3 repeat…until循環(huán)

先執(zhí)行循環(huán)體的語句,再進(jìn)行條件判斷,如果條件為 flase 則繼續(xù)執(zhí)行循環(huán)體,否則跳出循環(huán)。

repeat

statements

until( condition )

local a = 10

repeat

print("value of a:", a)

a = a + 1

until (a > 15)

輸出

value of a: 10

value of a: 11

value of a: 12

value of a: 13

value of a: 14

value of a: 15

4.5.4 循環(huán)控制語句

break語句 執(zhí)行到 break 處會(huì)跳出循環(huán)。

local a = 10

while(a < 20)

do

print("value of a:", a)

a = a + 1

if(a > 15) then

break

end

end

4.6 函數(shù)

local function factorial1(n)

if n == 0 then

return 1

else

return n * factorial1(n - 1)

end

end

print(factorial1(5))

local factorial2 = factorial1

print(factorial2(5))

輸出

120

120

可變參數(shù) Lua 函數(shù)可以接受可變數(shù)目的參數(shù),和 C 語言類似,在函數(shù)參數(shù)列表中使用三點(diǎn) … 表示函數(shù)有可變的參數(shù)。

local function add(...)

local s = 0

for i, v in ipairs { ... } do --> {...} 表示一個(gè)由所有變長參數(shù)構(gòu)成的數(shù)組

s = s + v

end

return s

end

print(add(3, 4, 5, 6, 7)) --> 25

內(nèi)置函數(shù) Lua 也有很多內(nèi)置函數(shù),我們可以通過官方手冊進(jìn)行查詢:https://www.lua.org/manual/5.4/

4.7 流程控制

4.7.1 if 語句

--[ 定義變量 --]

local a = 10;

--[ 使用 if 語句 --]

if (a < 20)

then

--[ if 條件為 true 時(shí)打印以下信息 --]

print("a 小于 20");

end

print("a 的值為:", a);

輸出

a 小于 20

a 的值為: 10

4.7.2 if…else 語句

--[ 定義變量 --]

local a = 100;

--[ 檢查條件 --]

if (a < 20)

then

--[ if 條件為 true 時(shí)執(zhí)行該語句塊 --]

print("a 小于 20")

else

--[ if 條件為 false 時(shí)執(zhí)行該語句塊 --]

print("a 大于 20")

end

print("a 的值為 :", a)

輸出

a 大于 20

a 的值為 : 100

4.8 邏輯運(yùn)算符

設(shè)定 A 的值為 true,B 的值為 false

操作符描述實(shí)例and 邏輯與操作符。 若 A 為 false,則返回 A,否則返回 B。(A and B) 為 false。or邏輯或操作符。 若 A 為 true,則返回 A,否則返回 B。(A or B) 為 true。not邏輯非操作符。與邏輯運(yùn)算結(jié)果相反,如果條件為 true,邏輯非為 false。not(A and B) 為 true。

柚子快報(bào)邀請碼778899分享:java Lua語法基本使用

http://yzkb.51969.com/

參考閱讀

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/18500329.html

發(fā)布評論

您暫未設(shè)置收款碼

請?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄