Lua判断数据类型的方法
一、判断数据类型的方法
type(xxxx) 这个函数的返回值是string类型 也就是说:
a = type(X) -- a="nil"
b = type(a) -- b="string"
a = type(nil) -- a="nil"
二、Lua脚本语言的8种基本数据类型
1.数值(number):内部以double表示.
2.字符串(string):总是以零结尾,但可以包含任意字符(包括零),因此并不等价于C字符串,而是其超集.
3.布尔(boolean):只有"true"和"false"两个值.
4.函数(function):Lua的关键概念之一.不简单等同于C的函数或函数指针.
5.表(table):异构的Hash表.Lua的关键概念之一.
6.userdata:用户(非脚本用户)定义的C数据结构.脚本用户只能使用它,不能定义.
7.线程(thread):Lua协作线程(coroutine),与一般操作系统的抢占式线程不一样.
8.nil:代表什么也没有,可以与C的NULL类比,但它不是空指针.
相关推荐
-
Lua教程(三):表达式和语句
一.表达式: 1. 算术操作符: Lua支持常规算术操作符有:二元的"+"."-"."*"."/"."^"(指数)."%"(取模),一元的"-"(负号).所有这些操作符都可用于实数.然而需要特别说明的是取模操作符(%),Lua中对该操作符的定义为: 复制代码 代码如下: a % b == a - floor(a / b) * b 由此可以推演出x % 1的
-
Lua表达式和控制结构学习笔记
算术操作符 Lua 的算术操作符有: "+"(加法): 复制代码 代码如下: print(1 + 2) "-"(减法): 复制代码 代码如下: print(2 - 1) "*"(乘法): 复制代码 代码如下: print(1 * 2) "/"(除法): 复制代码 代码如下: print(1 / 2) "^"(指数): 复制代码 代码如下: print(27^(-1/3)) "%"(取模)
-
Lua学习笔记之表达式
前言 这里总结的内容和其它语言的基本类似,所以这里就只是基本的进行总结.不做详细的讲解. 算术操作符 Lua支持常规的算术操作符有:"+"(加法),"-"(减法),"*"(乘法),"/"(除法),"^"(指数),"%"(取模),一元的"-"(负号).所有的这些操作符都用于实数.例如:x^0.5将计算x的平方根,x^3将计算x的3次方. 关系操作符 Lua提供的关系操作
-
Lua中基本的数据类型、表达式与流程控制语句讲解
1. Lua类型 1.1 基本类型 Lua是一种动态类型语言,没有类型定义的语法.Lua一共有8种基础类型:nil(空).boolean(布尔).number(数字).string(字符串).userdata(自定义类型).function(函数).thread(线程).table(表). 函数type可根据一个值返回其类型名称(字符串),如print(type(print)),输出"function":print(type(type(X))) ,输出"string"
-
Lua学习笔记之数据类型
从本篇博客开始研究一下Lua,现在的Lua真得是很火,因为Cocos2d-x写游戏的时候会用到,所以就拿过来学学吧,先从基础的语法开始,然后慢慢的深入.本人也是刚刚学习,希望和学习Lua的大家交流,博客权当笔记,有错误之处还请赐教. 当然首先是开发环境了,我的学习背景是Cocos2d-x,所以下载了最近发布的Cocos Code IDE版本,我们可以在Cocos Code IDE上边新建工程,然后写Lua测试代码,关于Cocos Code IDE的使用官方有不少的教程,这里就不说了.当然你也可以
-
Lua学习笔记之运算符和表达式
本篇博客学习一下Lua的运算符,比较简单,我将说明直接写到了代码中,代码如下. --算术运算符 --二元运算符:+ - * / ^ (加减乘除幂) --一元运算符:- (负值) --这些运算符的操作数都是实数,Lua中没有自增自减的运算符. --关系运算符 -- < > <= >= == ~= --这里需要注意的是不等于是用~=表示的 --这些操作符返回结果为false或者true:==和~=比较两个值,如果两个值类型不同,Lua认为两者不同: --nil只和自己相等.Lua通过引
-
Lua中的操作符和表达式总结
前言 这里总结的内容和其它语言的基本类似,所以这里就只是基本的进行总结.不做详细的讲解. 算术操作符 Lua支持常规的算术操作符有:"+"(加法),"-"(减法),"*"(乘法),"/"(除法),"^"(指数),"%"(取模),一元的"-"(负号).所有的这些操作符都用于实数.例如:x^0.5将计算x的平方根,x^3将计算x的3次方. 关系操作符 Lua提供的关系操作
-
Lua数据类型介绍
Lua 是一个功能强大.快速.轻量的可嵌入式脚本语言,由标准的 ANSI C 实现,由于拥有一组精简的强大特性,以及容易使用的 C API,这使得它可以很容易嵌入或扩展到其他语言中使用,并且有个非官方认领的中文名 -- "撸啊". 安装 Lua Lua 安装很简单,把源码下载下来后,直接 make 就行: 复制代码 代码如下: wget http://www.lua.org/ftp/lua-5.2.2.tar.gz tar -zxvf lua-5.2.2.tar.gz cd lua-5
-
Lua中的基本数据类型详细介绍
基础介绍 Lua是一种动态类型的语言.在语言中没有类型定义的语法,每个值都带有其自身的类型信息.在Lua中有8中基本类型,分别是: 1.nil(空)类型 2.boolean(布尔)类型 3.number(数字)类型 4.string(字符串)类型 5.userdata(自定义类型) 6.function(函数)类型 7.thread(线程)类型 8.table(表)类型 以上是Lua中的8中基本类型,我们可以使用type函数,判断一个值得类型,type函数返回一个对应类型的字符串描述.例如: 复
-
实现Lua中数据类型的源码分享
概述 在Lua中有8种基础类型:nil.boolean.number.string.userdata.function.thread和table.可以使用函数type查看某个变量或值的类型,返回相应的类型名称.像其他动态语言一样,在语言中没有类型定义的语法,每个值都携带了它自身的类型信息.下面将通过Lua 5.2.1的源码来看类型的实现. 源码实现 Lua将值表示成带标志的联合结构,代码如下(lobject.h): 90 /* 91 ** Union of all Lua values 9
-
深入探究Lua中的解析表达式
使用一个模式 这个例子显示了一个建立和使用模式的程序,它非常简单但很完整: 复制代码 代码如下: local lpeg = require "lpeg" -- matches a word followed by end-of-string p = lpeg.R"az"^1 * -1 print(p:match("hello")) --> 6 print(lpeg.match(p, "hello"))
-
详解Lua中的数据类型
Lua是动态类型语言,所以变量没有类型,仅值有类型.值可以被存储在变量中,作为参数传递,并作为结果返回. 在Lua中虽然我们没有变量的数据类型,但我们有类型的值.用于数值数据类型的列表在下面给出. 函数类型 在Lua中有一个叫做函数类型,使我们能够知道变量的类型.如下一些例子给出了下面的代码. 复制代码 代码如下: print(type("What is my type")) --> string t=10 print(type(5.8*t))
-
Lua基础教程之赋值语句、表达式、流程控制、函数学习笔记
赋值语句 注释,单行用(--)来表示:多行用(--[[ ... ]])来标示: 定义,lua中没有定义(申明数据类型),它是通过赋值来确定其数据类型的. 赋值,是改变一个变量的值和改变表域的最基本的方法. a = "hello" .. "world" Lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量.a, b = 10, 2*x <--> a=10; b=2*x 遇到赋值语句Lua会先计算右边所有的
随机推荐
- Python二叉搜索树与双向链表转换实现方法
- vue实现列表的添加点击
- ASP.NET 前后台调用方法
- javascript获取url上某个参数的方法
- php各种编码集详解和以及在什么情况下进行使用
- Yii结合CKEditor实现图片上传功能
- javascript 函数介绍
- Bootstrap源码解读按钮(5)
- 详解ES6之async+await 同步/异步方案
- JavaScript生成随机数的4种自定义函数分享
- js阻止浏览器默认行为触发的通用方法(推荐)
- z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
- 基于JQuery实现的Select级联
- js可拖动的后台界面
- 两种WEB下的模态对话框 (asp.net或js的分别实现)
- 解析web.xml中在Servlet中获取context-param和init-param内的参数
- ImageView简单加载网络图片实例代码
- python+selenium+autoit实现文件上传功能
- 23种设计模式(8) java外观模式
- ASP.NET 谨用 async/await