零碎知识点:

lua:用lua写UI,更新UI,因为lua可直接跨平台解析,不需要编译,方便更新------>热更新.

c#反射也可以达到更新,但非常麻烦,切不支持iOS.

在lua中一个人汉字占两个字符,删除的时候需要删两次.

用type()可以获取变量类型.

如果不定义变量类型,默认为全局变量,局部关键字为:local.

判断语句:

if xt<=0 then-----------------------------判断条件后加关键字"then"

操作..

elseif xt>0 then------------------------elseif连在一块写,区别于C#,同样判断条件后加关键字"then"

else--------------------------------------不管有没有elseif,else不可或缺!!!

end  -------------------------------------判断结束加end.

循环语句:

第一种:while...end

while xt<0 then

操作......

xt=xt+1---------------------注意lua中无自增和自减,用这种方式操作!

end

第二种:for...end

do ------注意lua中索引是从1开始的,且在循环结束条件后加关键字"do","+1"自增

操作....

end

第三种:repeat...until(不需要end结束语)

repeat

操作...

until xt>100

与C#中do...while类似!

break打断循环,没有continue区别于C#!!!

函数:

格式:

function   方法名 (参数01,参数02)-------默认全局变量,有返回值,有参,用关键字"function"

return  参数01+参数02---------------------返回值

end-----------------------------------------------结束语

自带函数:(可查官方API)

math: 数学公式

.abs    绝对值

.max,min  极值

.random   随机

string: 字符串操作

..                    字符串相加,拼接

.tostring(/tonumber)  字符串格式转化

.upper(/lower)           转化大小写

.sub(str,1,length)      截取字符串(字符串,起始下标,截取长度)

.format(str,....)       字符串的拼接

table:(与C#中字典类似)

(一).创建table的三种方式:

A:

mytable={}

mytable[1]=34

mytable["name"]=xt------另一种写法mytable.name=xt

B: mytable={name="b2",age=18,isman=false}

注意用",隔开,且可以在继续添加

C: mytable={34,54,64,789,1}

因为是键值对,所以此时的key被系统从1开始赋值

(二).遍历:

1).如果是上面c类型的table 

           for   index=1,table.getn(mytable) ,1 do--------注意遍历第一个下标为1

print (mytable[index])------------------------index已经自增

end---------------------------------------------------结束语

2).普遍适用(相当于C#中foreach)

for    index,value    in  pairs(mytable)  do

print  (index ,value)

end

注意:遍历顺序是有问题的,因为字典(/table)是无序的,所以遍历有问题,但也不是无迹可寻,详情请参照"菜鸟驿站--遍历"

(三).table中的常用方法

table.getn(mytable)-----------------获取mytable的长度;

table.concat(mytable)--------------------把mytable表中所有数据连成一个字符串展示出来,必须是c格式的table

table.insert(mytable,key,value)---------插入新键值对;

A,B格式insert是新加入一个键值对

C格式中key相当于在默认值中改动

table.remove(mytable,key)-----------------移除某个键;

table.sort(mytable)-----------------针对C格式的键值进行排序;

table.move()-----------------移动数据;

table.pack()-----------------包装成一个表;

table.unpack()-----------------返回一个数组;

(四).面向对象----table之间的关系

lua中面向对象由table实现.

具体操作:

Enemy={}   -------------------申明一个table

local  this  =Eneny----------申明 table  this

函数写法一:

Enemy.Move=function()----Move为函数方法

操作....

end

函数写法二:

function=Enemy.Attack()--Attack为函数方法

操作....

this.Move()------------------调用Move方法

end

lua语言自学知识点----简单了解的更多相关文章

  1. lua语言自学知识点----Lua与.Net相互调用

    知识点: LuaInterface作用是用来完成Lua与C#的相互调用. LuaInterface核心库:1.luainterface.dll 用于C#读取lua(放在bin目录同级) 2.luane ...

  2. Lua语言自学之01.基础概念的理解

    编程不只是这么简单,它的思维是理性的编程思维,操纵机器干事本来就不是一件简单的事,要干什么,该怎么做,怎么做得才好. 脚本的概念在程序中十分重要,在游戏开发领域,它更是决定性的.脚本语言让程序员可以区 ...

  3. Unity进阶----Lua语言知识点(2018/11/08)

    国内开发: 敏捷开发: 集中精力加班堆出来第一个版本 基本没啥大的bug 国外开发: 1).需求分析: 2).讨论 3).分模块 4).框架 5).画UML图(类图class function)(e- ...

  4. C/C++编程笔记:C语言入门知识点(三),请收藏C语言最全笔记!

    今天我们继续来学习C语言的入门知识点,第一课:C/C++编程笔记:C语言入门知识点(二),请收藏C语言最全笔记! 21. 输入 & 输出 当我们提到输入时,这意味着要向程序填充一些数据.输入可 ...

  5. 【quick-cocos2d-x】Lua 语言基础

    版权声明:本文为博主原创文章,转载请注明出处. 使用quick-x开发游戏有两年时间了,quick-x是cocos2d-Lua的一个豪华升级版的框架,使用Lua编程.相比于C++,lua的开发确实快速 ...

  6. 编译并使用Lua语言

    Lua是一个小巧的脚本语言,该语言设计的目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能. 可扩展性.Lua的扩展性非常卓越,可以通过Lua代码或C代码扩展,很多功能可以通过外部库来扩 ...

  7. lua 语言笔记

    Lua语言基础汇总(1) -- 类型与值 基础介绍 Lua是一种动态类型的语言.在语言中没有类型定义的语法,每个值都带有其自身的类型信息.在Lua中有8种基本类型,分别是: nil(空)类型 bool ...

  8. Cocos2d-x-Lua (2.x)脚本开发之 Lua语言基础

    从今天開始,往后将陆续更新Lua教程,主要是搭载Cocos2dx ,有不论什么疑惑或者不正确的地方.尽情指正.交流.探讨. 那么首先肯定是Lua语言基础的知识点.以下直接附上代码,凝视已经非常清楚.无 ...

  9. Lua语言中文手册 转载自网络

    Programming in LuaCopyright ® 2005, Translation Team, www.luachina.net Programming in LuaProgramming ...

随机推荐

  1. 帆软认证BI工程师FCBA-部分题目

    1.安装32位系统的FineBI,最多只能支持2G内存. 正确 错误 2.Spider数据引擎中适合内存化的表通常为数据量小且更新频率较低的表. 正确 错误 3.Spider数据引擎支持跨数据源进行数 ...

  2. 【原创】大数据基础之Impala(3)部分调优

    1)将coordinator和executor角色分离 By default, each host in the cluster that runs the impalad daemon can ac ...

  3. The Apache Tomcat installation at this directory is version 8.5.40. A Tomcat 8.0 installation is expected.

    问题描述 Eclipse 配置 Apache Tomcat 8.5.40(8.0.x 以上版本),会报如下错误信息: 解决方法 1)在 Apache Tomcat 的安装目录中找到 lib 目录下的 ...

  4. IntelliJ IDEA重启Tomcat

  5. [原创]基于Zynq SDIO WIFI 2.4G/5G SotfAP STA

    支持正基WiFi模块.高通WiFi模块: 2.4G速率: 5G AC速率: 支持SoftAP.STA模式:

  6. VB 字符串转换为UTF-8

    dim e as object Set e=CreateObject("MSScriptControl.ScriptControl") e.Language = "jav ...

  7. thinkPHP5扩展workerman

    -安装workerman 首先通过 composer 安装 composer require topthink/think-worker -vvv 如果报错: Installation failed, ...

  8. 1到n的最小步数

    1到n的最小步数 Time Limit: 1 Sec  Memory Limit: 128 MB 给你一个数n,让你求从1到n的最小步数是多少. 对于当前的数x有三种操作: 1:  x+1 2:  x ...

  9. nginx代理tcp协议连接mysql

    阅读目录 一.mariadb安装及配置 1.1 在192.168.182.155安装mariadb 1.2 配置MariaDB的字符集 1.3  添加用户,设置权限 1.4 防火墙设置 二.nginx ...

  10. Python语言的PyCharm开发工具的简单使用

    1.创建一个新的项目 创建一个目录或者文件夹 设置模板:制作一个常用的,模板 # @Author:lnx# @version V1.0# -*- coding:UTF-8 -*- 搜索/替换快捷键 代 ...