[COCOS2D] lua学习之初识lua基本数据类型和基本语法详解

[复制链接]
星空 发表于 2019-1-11 21:36:51 | 显示全部楼层 |阅读模式
工欲善其事必先利其器,在搭建了lua的环境以后,就可以开始lua的学习了。Lua作为脚本语言,也是有自己的语法等结构的。 5 S" e. _0 }1 l' ?- x9 @2 F
    在lua中有八种数据类型,分别是数值(number),字符串(string),布尔(boolean),函数(function),表(table),userdata,线程(thread),nil(类似于c语言的NULL)。
: ]- k- z; L3 ]    与其他编程语言都是有点类似的,这也是语言的相通地方。Lua中string类型的数值和number类型的数值进行算术操作时,string就是转换为数字。
5 B5 \0 u+ k  c2 t例如:printe("10" + 10);  大家猜猜结果是什么?? - g2 v" @1 [* C0 I7 T

lua学习之初识lua基本数据类型和基本语法详解

lua学习之初识lua基本数据类型和基本语法详解

2 o* T8 L3 `/ U# _! i8 A
7 X9 F& @3 \2 w* F( f突然觉得lua好有个性啊。虽然字符串和数字是可以互相转换的,但是两者是不同的。
) P$ ~  {: K# q+ {5 R6 g/ e像“10”=10这样永远都是错的。 7 `# f& w  f: o# d$ c1 L

lua学习之初识lua基本数据类型和基本语法详解

lua学习之初识lua基本数据类型和基本语法详解

: h. m( q6 j- w& }Lua中的基本表达式 0 R+ e% O4 s& p( O4 T

4 ~/ [( f' K; Z8 z8 h1、算数运算符 ) ]* y1 W" N4 M6 t5 o; g" A. h

$ ?+ p" u$ C' W一元运算符:-(负值)
; b8 g( H2 c5 M! W! a二元运算符:+-*/^(加减乘除幂) $ i6 [# H: J$ d/ y$ e
! p$ }& y3 ]! K0 M9 r
2、关系运算符
% z; |, x# y% F, c9 s3 k: a. ]9 L
< ,>,<=,>=,==,~= 。这些操作符的返回结果为false或者true。 & l6 D% L* A+ E; }
在lua中比较大小时候,数字按照大小比较。字符串按字母顺序进行比较。
( n9 m: p5 D4 b1 M- d# T9 x, f* N
" X# y) H+ k7 M3、逻辑运算符 7 t* Z9 e3 }1 z$ w
' @& P4 y8 m2 H$ k: I! _
and   or   not   这和其他语言的与或非一致。 - W9 B% a+ P4 D" ^( w# c9 W
3 _' Q6 ~+ \& o
4、连接运算符(..)
9 w  K- G: t6 q5 c% x" n( S0 |* i. N1 Y* H' j  w& l& b
两个点的连接符主要用于字符串连接,如果操作数为数值,lua将转换为字符串。
! X6 E! Z0 Z6 o: q# ~; }
- T# l( `% K  E' d2 w# `2 k" G: PLua中的基本语法 ; @, P5 k! F. R3 n

% S( s/ b- V& n) }5 }1、赋值语句
: r; a$ z: f8 L2、控制语句
) B" x& O. [* l' k
3 j8 Z/ A- K& {" f# E* ]if语句:
  ]5 ^6 l# N' L- Bif 条件1 then
& ^& `& \) Y3 L6 g  W) R# _) Y    执行语句1; : _5 c( s( ~$ P# y" H5 i9 j
else
, _! I( F: a- z& B. \( Y    执行语句2;
- R+ K- E, B7 Z+ u3 K/ qend; / U: i- x5 T% s9 j5 C# `" }
  + Q) W& S  L2 T
while语句:
8 c/ t7 z/ X6 [8 z6 k8 ?, Cwhile 条件 do 5 J! D4 B- C+ N) c" t1 E+ e7 ]* R6 f
    执行语句;
' ^. e/ ~- O2 e# Nend; 7 z/ C7 Q+ k. W- P1 ]5 p
  # h9 A, f4 @5 d/ E2 l
repeat-until语句: & J+ D5 O. Q0 x" T  Y( i
repeat
, \; n* B- g8 f$ C7 l  w! t+ a    执行语句; 3 U- l* y+ b1 ^% R( {
until 条件;
# q9 t; p& `. w1 \& _3 y, `  / V) v3 S# i( ^+ |+ Z% o8 ]
for循环语句
6 r- g, B/ z9 L% L2 p7 afor 起始,终止,步长 do
% S) s# k. z2 S    执行语句;
$ O  I  b2 a4 E5 \' {9 x  b, a% |end; ; `% G% N5 {4 y4 R* k( S
提示:步长省略则默认为1.
- J; O" b7 s- `9 D3 N% D
5 B' F" y* y8 P9 k! l) }6 O3、break和return 语句
) p! u7 E7 \& u1 d8 {' p5 `; w, vbreak语句用来退出当前循环,如for,repeat,while等,不可以在循环外使用。 8 Y* w9 h; ?" w" V6 c( H2 _
return用来从函数返回结果。
4 A  ?* Y) ]9 l. d' I) I: |) |
Lua中的函数 7 s4 ^6 V# M' p
7 f! J$ c4 T3 u
Lua中函数的语句结构为:
, k$ J6 F  g( o5 @function 函数名(参数列表)
$ m4 k: z5 j5 l/ m3 Y0 c! A5 M    函数体; 3 r  O, Y8 `! o) M5 Q: T
end;
, ~* F2 Y* L* {1 m( H
( v4 H4 _0 J& V0 d. VLua中的函数使用 + j$ f7 M' q/ k4 Z% K
% X* b& L. X: i' [0 P: o1 n) ^! Y
1、Lua中函数使用关键字function定义,以关键字end结束。
: ]6 R% E! F5 g( n+ J0 w2、局部变量用关键字local定义。如果没有用local定义,即使在函数内部定义的变量也是全局变量!
) b- V( y7 x0 h3、函数可以返回多个值return a, b, c, ...
. C3 f( i& I3 U! G0 i% Z4、平行赋值 a, b = c, d ! N% V# O9 Q% A! S9 [

lua学习之初识lua基本数据类型和基本语法详解

lua学习之初识lua基本数据类型和基本语法详解
/ U- Q9 A8 |+ J

$ Z! r" e/ l8 }, x9 `: x" U/ Z$ VLua中最基本的语法大致就这些,本人也是大致花了几个小时来熟悉下这些语法,当然这是在你有编程基础的前提下,如果零基础则要深入去了解它了。
哎...今天够累的,签到来了游戏源码下载...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则