Lua常⽤库⽅法(数学库和table库)
⼀.数学库
  1.math.abs()  作⽤:取绝对值例⼦:math.abs(-5)  结果:5
il()  作⽤:向上取整例⼦:il(
3.4)  结果:4  il(-3.2)  结果:-3
  3.math.floor()  作⽤:向下取整例⼦:math.floor(3.4)  结果:3  math.floor(-3.2)  结果:-4
  4.math.max()  作⽤:取得参数中最⼤值例⼦:math.max(2.71,100,-98,23)  结果:23
  5.math.min()  作⽤:取得参数中最⼩值例⼦:math.min(2.71,100,-98,23)  结果:-98
  6.math.randomseed()  作⽤:设置随机数种⼦在使⽤math.random()函数之前必须使⽤此函数设置随机数种⼦
  7.math.random()  作⽤:获取随机数
    math.random()  结果:不传⼊参数,返回⼀个 [0,1) 范围内的浮点随即数
    math.random(n)  结果:传⼊⼀个参数 n ,返回⼀个 [1,n] 范围内的整数
    math.random(n,m)  结果:传⼊两个参数,返回⼀个 [n,m] 范围内的整数
   例⼦1:
lua字符串转数组    math.randomseed(os.time())
    for i=1,10,1 do
      print(math.random(10))
    end
   例⼦2: 
    for i=1,10,1 do
      math.randomseed(os.time())
      print(math.random(10))
    end
  例⼦1得到了正常的随机数,例⼦2得到的是⼀系列相同的数,因为较短的时间内,这种写法的seed可以说是⼀样的(os.time()返回⼀个当前时间戳)
⼆.table库
  table库是有⼀些辅助函数构成的,这些函数将 table 作为⼀个数组来操作。
    1.table.insert()  作⽤:将元素插⼊到⼀个数组的指定位置。如果没有指定位置,则会将元素添加到数组末尾。
      参数:table:指定数组(不可省略),pos:指定插⼊位置,默认插⼊到数组末尾(可省略),value:插⼊的值(不可省略)
      注意:未指定 pos ,默认插⼊到数组末尾
      例⼦:
        t = {10,20,30}
        table.insert(t,40)  结果: {10,20,30,40}
        table.insert(t,1,40)  结果:{40,10,20,30}
    ve()  作⽤:将指定位置元素删除并返回该元素,并将该位置后的所有元素前移
      参数:table:指定数组(不可省略),pos:指定位置,默认为最后⼀个元素的位置(可省略)
      例⼦:
        t = {10,20,30}
        ve(t)  结果: {10,20}
        ve(t,1)  结果:{20,30}
    3.table.sort()  作⽤:对⼀个数组进⾏排序。还可以指定⼀个可选的次序函数。这个次序函数有两个参数,如果希望第⼀个参数在排
序结果中位于第⼆个参数值前,就应当返回 true 。如果没有这个函数,sort 就使⽤默认的⼩于操作。
      例⼦:
        table.sort(a,function(a,b)
          return a > b
        end)
    at()  作⽤:它接受⼀个数组,并返回数组元素连接后的结果。
      参数:table:指定数组(不可省略),sep:连接的字符,默认空字符串 ""(可省略),start:连接的起始位置,默认为1(可省略),end:连接的终⽌位置,默认是 table的长度(可省略)
      注意:
        1.除了第⼀个参数,其他都可省略
        2.下标必须为数字,下标必须相连,默认从1开始(可通过设置 start 参数修改起始位置)
      例⼦:
        local _arr = {
          "10",
          "20",
          "30",
          x = 1,
          [4] = "40",
          [6] = "50",
        }
        at(_arr))  =>  "10203040"
        at(_arr,",")  =>  "10,20,30,40"
        at(_arr,","3)  =>  "30,40"
        at(_arr,",",2,3)  =>  "20,30"

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。