第三章 表达式 Lua程序设计笔记

--第三章 表达式
--3.1 算数操作符
--3.2 关系操作符
其计算结果是true或false。
如果两个值的类型不同,则Lua认为他们不相等。nil只与自身相等。
对于table、userdata和函数,Lua作引用比较,只有当它们引用同一个对象时,才认为它们相等。

--3.3逻辑操作符
--3.4字符串连接
Lua中字符串是不可变的值,连接操作符只会创建一个新字符串,而不会对员操作数进行修改。
--3.5优先级
Lua二元操作符中只有^ 和..是右结合,其他都是左结合

--3.6table构造式{}

混合使用的风格

polyline = { color = "blue", thickness = 2, npoints = 4,
        {x = 0, y = 0},
        {x = -10, y = 0},
        {x = -10, y = 1},
        {x = 0, y = 1}
}
print(polyline[2].x)  -->-10
print(polyline[4].y)  --> 1
时间: 2024-10-29 03:43:22

第三章 表达式 Lua程序设计笔记的相关文章

第四章 语句 Lua程序设计笔记

--第四章 语句--4.1 赋值Lua支持多重赋值,先对等号右边所有元素求值,然后进行赋值.这可以用来交换变量x, y = y, x 若值的个数少于变量的个数,则多余的变量会被赋值为nil.若值的个数多余变量的个数,则多余的值会被丢弃. --4.2局部变量与块block局部变量的作用域仅限于声明它们的那个块.一个快可以是一个执行体.一个函数或者一个chunk 尽可能使用局部变量:1避免搞乱全局环境2访问局部变量更快3局部变量随其作用域结束而消失,GC可以释放其值. local foo = foo

第五章 函数 Lua程序设计笔记

--第五章 函数若函数只有一个参数,并且此参数时字符串或table,则圆括号可有可无 print "hello world" <--> print("hello world") f {x = 10, y = 20} <--> f ({x = 10, y = 20}) --5.1多重返回值 function foo0 () end function foo1 () return "a" end function foo2 (

《机器学习导论》第三章 贝叶斯决策定理 学习笔记

在机器学习领域,我们碰到的第一个问题就是:如何选择特征量. 可是看了一些资料,这点好像都是一笔带过,因为很多都是所谓的不可观测量,如何把不可观测量量化呢?这个或许能给机器学习带来新的契机,就像当年牛顿把力.质量.加速度等模糊的概念定义下来,经典物理出现了前所未有的发展,香农把信息量化,造就了信息革命. 以前觉得贝叶斯好像没有大家说的那么神奇,现在知道,是因为当年对它的理解就有问题,贝叶斯更重要的一点应该是能够在加入evidence的情况下,从先验概率进化到后验概率,这点简直就是机器学习的内涵啊

Java 线程第三版 第三章数据同步 读书笔记

多线程间共享数据问题 一.Synchronized关键字 atomic一词与"原子"无关,它曾经被认为是物质的最小的单元,不能再被拆解成更小的部分. 当一个方法被声明成synchronized,要执行此方法的thread必须先取得一个token,我们将它称为锁.一旦该方法取得(或者说是获得)锁,它将运行此方法然后释放掉(或者返回)此锁.不管方法时怎样返回的(包括通过异常)该锁会被释放. 二.Volatile关键字 如果变量被标示为volatile,每次使用该变量时都必须从主寄存器中读出

Python编程入门-第三章 编写程序 -学习笔记

第三章 编写程序 1.编辑源程序.运行程序 可通过IDLE中File>New File新建一个文本以编辑源程序,编辑完成可通过Run>Run Module(或者F5快捷键)来运行程序.Python源文件都以.py格式存储. 2.从命令行运行程序 除了上述利用IDLE的集成功能运行程序的方式外,当然也可以通过命令行运行程序,命令格式为:python ‘源文件名称.py’. 3.编译源代码 当运行py格式文件时,Python会自动创建相应的.pyc文件,该文件包含编译后的代码即目标代码,目标代码基

Lua 第三章--表达式

表达式用于表示值.Lua的表达式中可以包含数字常量.字面字符串.变量.一元和二元操作符及函数调用.另外有别于传统的是,表达式中还可以包括函数定义和table构造式. Lua支持常规的算术操作符有:二元的+.-.*./.^.%,及一元 - (负号).取模操作符计算结果的符号永远与第二个参数相同. Lua提供的关系操作符有:>.<.>=.<=.==.~=.所有这些操作符的运算结果都是true或false. 逻辑操作符有and.or 和not .与条件控制语句一样,所有的逻辑操作符将fa

第一章 开始 Lua程序设计第二版笔记

--第一章 开始--1.1chunk 程序块chunk大小可以任意,一个源代码文件或交互模式中的一行代码都是chunk --1.2词法规范标识符通常保留下划线开头,作为Dummy Variable使用. --1.3全局变量Lua中访问一个未初始化的变量不会引发错误,访问结果是一个nil print(b) -->nil

第六章 深入理解函数 Lua程序设计笔记

--第六章 深入理解函数Lua中函数是"第一类值",与其他传统类型有相同的权利:可以储存到变量或table中,可以作为函数实参传递,还可以作为函数的返回值. 函数的标准定义: foo = function(x) return x*2 end 一个函数定义实际上就是一条赋值语句,这条语句创建了一种类型为"函数"的值,并将这个值赋予一个变量. --6.1closure(闭合函数) function newCounter() local i = 0 return func

第十三章 元表与元方法 Lua程序设计笔记

--第十三章 元表与元方法Lua中每个值都有一个表.table和userdata可以有各自独立的元表,其他类型的值共享一个元表.Lua中只能设置table的元表.若要设置其他类型的值的元表,则必须通过C代码来完成. --13.1算数类型的元方法 Set = {} local mt = {} --创建元表 function Set.new(l)--根据参数列表中的值创建一个新的集合 local set = {} setmetatable(set, mt) --设置元表 for _,v in ipa