当前位置: 首页 > 编程笔记 >

Lua中的变量和流控制入门学习

常海
2023-03-14
本文向大家介绍Lua中的变量和流控制入门学习,包括了Lua中的变量和流控制入门学习的使用技巧和注意事项,需要的朋友参考一下

num = 42  -- 所有的数字都是double。

-- 别担心,double的64位中有52位用于

-- 保存精确的int值; 对于需要52位以内的int值,

-- 机器的精度不是问题。

s = 'walternate'  -- 像Python那样的不可变的字符串。

t = "双引号也可以"

u = [[ 两个方括号

       用于

       多行的字符串。]]

t = nil  -- 未定义的t; Lua 支持垃圾收集。

-- do/end之类的关键字标示出程序块:

while num < 50 do

  num = num + 1  -- 没有 ++ or += 运算符。

end

-- If语句:

if num > 40 then

  print('over 40')

elseif s ~= 'walternate' then  -- ~= 表示不等于。

  -- 像Python一样,== 表示等于;适用于字符串。

  io.write('not over 40\n')  -- 默认输出到stdout。

else

  -- 默认变量都是全局的。

  thisIsGlobal = 5  -- 通常用驼峰式定义变量名。

  -- 如何定义局部变量:

  local line = io.read()  -- 读取stdin的下一行。

  -- ..操作符用于连接字符串:

  print('Winter is coming, ' .. line)

end

-- 未定义的变量返回nil。

-- 这不会出错:

foo = anUnknownVariable  -- 现在 foo = nil.

aBoolValue = false

--只有nil和false是fals; 0和 ''都是true! if not aBoolValue then print('twas false') end

-- 'or'和 'and'都是可短路的(译者注:如果已足够进行条件判断则不计算后面的条件表达式)。

-- 类似于C/js里的 a?b:c 操作符:

ans = aBoolValue and 'yes' or 'no'  --> 'no'

karlSum = 0

for i = 1, 100 do  -- 范围包括两端

  karlSum = karlSum + i

end

-- 使用 "100, 1, -1" 表示递减的范围:

fredSum = 0

for j = 100, 1, -1 do fredSum = fredSum + j end

 通常,范围表达式为begin, end[, step].

-- 另一种循环表达方式:

repeat

  print('the way of the future')

  num = num - 1

until num == 0 

 类似资料:
  • 本文向大家介绍Lua入门学习笔记,包括了Lua入门学习笔记的使用技巧和注意事项,需要的朋友参考一下 最近在使用Cocos2d-x + Lua来开发游戏。 游戏的主要逻辑将在Lua里写,之前没有接触过Lua,以下是我总结的入门笔记。 运算符 逻辑运算符 与:and 或:or 非:not 逻辑判断只有在false和nil时为假,其余均为真。 or和and会返回第一个断路的值。 Lua中没有C语言的三元

  • 主要内容:实例Lua 编程语言流程控制语句通过程序设定一个或多个条件语句来设定。在条件为 true 时执行指定程序代码,在条件为 false 时执行其他指定代码。 以下是典型的流程控制流程图: 控制结构的条件表达式结果可以是任何值,Lua认为false和nil为假,true和非nil为真。 要注意的是Lua中 0 为 true: 实例 --[ 0 为 true ] if ( 0 ) then     print

  • Lua 编程语言流程控制语句通过程序设定一个或多个条件语句来设定。在条件为 true 时执行指定程序代码,在条件为 false 时执行其他指定代码。 以下是典型的流程控制流程图: 控制结构的条件表达式结果可以是任何值,Lua认为false和nil为假,true和非nil为真。 要注意的是Lua中 0 为 true: --[ 0 为 true ] if(0) then print("0 为

  • If If是分支 (branch) 的一种特殊形式,也可以使用else和else if。 与C语言不同的是,逻辑条件不需要用小括号括起来,但是条件后面必须跟一个代码块。 Rust中的if是一个表达式 (expression),可以赋给一个变量: let x = 5; let y = if x == 5 { 10 } else { 15 }; Rust是基于表达式的编程语言,有且仅有两种语句 (st

  • 本文向大家介绍Lua极简入门指南:全局变量,包括了Lua极简入门指南:全局变量的使用技巧和注意事项,需要的朋友参考一下 全局环境 Lua 把全局变量放在一个 table _G 中,这个 table 被叫做全局环境(global environment)。打印所有的全局变量名: _ENV(Lua 5.2 开始支持) 对于一个 free name(名字没有绑定任何声明)var 实际上会被转换为 _EN

  • Lua 是一个小巧的脚本语言。是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组,由 Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo 所组成并于 1993 年开发。其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩