Lua中遍历数组和table的4种方法
方法一,可以用for来遍历:
do
table_week = {
"w",
"e",
"r",
"t",
"y",
"u",
"i",
}
for i = 1, #table_week do
print(table_week[i])
end
end
#后面接一个数组或者tabe来遍历它,i是该table或者数组的起始下标。
方法2:
do
table_week = {
"w",
"e",
"r",
"t",
"y",
"u",
"i",
}
for i, v in pairs(table_week) do
print(i)
end
end
这种是采用迭代器的方式遍历的,i为下标,v为table或者数组的值。
方式3:
do
table_week = {
"w",
"e",
"r",
"t",
"y",
"u",
"i",
}
for i in pairs(table_week) do
print(i);
end
end
i为table或者数组的下标。
方式4:
do
table_view = {
"w",
"e",
"r",
color1 = "red",
color2 = "blue",
{"a1", "a2", "a3"},
{"b1", "b2", "b3"},
{"c1", "c2", "c3"},
}
for i, v in pairs(table_view) do
if type(v) == "table" then
for new_table_index, new_table_value in pairs(v) do
print(new_table_value)
end
else
print(v)
end
end
end
注:type(v)
功能:返回参数的类型名("nil","number", "string", "boolean", "table", "function", "thread", "userdata")
相关推荐
-
java集合遍历的几种方式总结及详细比较
集合类的通用遍历方式, 用迭代器迭代: Iterator it = list.iterator(); while(it.hasNext()) { Object obj = it.next(); } Map遍历方式: 1.通过获取所有的key按照key来遍历 //Set<Integer> set = map.keySet(); //得到所有key的集合 for (Integer in : map.keySet()) { String str = map.get(in);//得到每个key多对用v
-
list的4种遍历方式(实例讲解)
废话不多说,直接上代码: import java.util.ArrayList; import java.util.Iterator; import java.util.List; import com.hbut.domain.Person; public class TestList { /** * * List 代表一个元素有序.且可重复的集合,集合中的每个元素都有其对应的顺序索引 * List 允许使用重复元素,可以通过索引来访问指定位置的集合元素. * List 默认按元素的添加顺序设置
-
Java中四种遍历List的方法总结(推荐)
实例如下: package com.ietree.basic.collection.loop; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * List遍历 * * @author Dylan */ public class ListLoop { public static void main(String[] args) { // 初始化一个长度为10的ArrayList L
-
java中List集合及其遍历详解
1. 首先List<E>集合继承与Collection<E>,是一个接口. ① Collection (集合框架是JDK1.2版本出现的) ② list:是有序的,元素可以重复,以为该集合体系有索引. 经常用到的是实现该接口的ArrayList和LinkedList类 ③ Arraylist: 底层的数据结构使用的是数组结构, 特点: 查询速度很快,但是增删稍慢.线程不同步 LinkedList: 底层使用的是链表数据结构. 特点: 增删速度很快,查询稍慢. Ve
-
Lua中遍历数组和table的4种方法
方法一,可以用for来遍历: 复制代码 代码如下: do table_week = { "w", "e", "r", "t", "y", "u", "i", } for i = 1, #table_week do print(table_week[
-
JavaScript中遍历对象的property的3种方法介绍
在JavaScript中,可以用三种方法来遍历对象的property: 1.for/in.可以使用for/in语句遍历对象自身的property(Own Property)及其从原型对象处继承的property,只有enumerable的property才会被遍历到. 2.Object.keys().可以将对象作为参数传入Object.keys(),Object.keys()语句将返回由所有property名称字符串所组成的数组.Object.keys()语句仅返回对象自身的(Own Prope
-
Lua中实现sleep函数功能的4种方法
一个不幸的消息是Lua中没有内置sleep函数,我们需要DIY.有4种方法可以实现sleep函数,如下: 方法1 复制代码 代码如下: --在一个死循环中设置一个跳出条件,但是这样的做法会占用大量CPU资源,强烈不推荐使用哦 function sleep(n) local t0 = os.clock() while os.clock() - t0 <= n do end end 方法2 复制代码 代码如下: --调用系统的sleep函数,不消耗CPU,但是Windows系统中没有内置
-
详解Lua中的数组概念知识
数组是有序的对象的装置,它可以是包含含有多个行和列的行或多维阵列的集合的单个二维数组. 在Lua中,数组是使用索引表与整数实现的.数组的大小是不固定的,它可以增长基于我们需要受存储器限制. 一维数组 一维数组可以用一个简单的表结构来表示,可以初始化,使用一个简单的for循环读取.如下例子所示. 复制代码 代码如下: array = {"Lua", "Tutorial"} for i= 0, 2 do print(array[i]) end 当我们运行上面的代码
-
PHP中遍历数组的三种常用方法实例分析
本文实例讲述了PHP中遍历数组的三种常用方法.分享给大家供大家参考,具体如下: 在PHP中操作最多的数据估计也就是数组了,有着效率高.速度快.存储方便的特点. PHP中遍历数组有三种常用的方法: 1.for循环,用法最为灵活,灵活到怀疑人生,但记住格式也非常简单. 2.foreach,是PHP为数组遍历专门提供的函数,在PHP4版本中引入,同时执行效率最高 3.联合使用list().each()和while循环遍历数组,此用法使用较少,但list()函数使用非常多 直接看实例代码: <?php
-
Vue中遍历数组的新方法实例详解
1.foreach foreach循环对不能使用return来停止循环 search(keyword){ var newList = [] this.urls.forEach(item =>{ if(item.name.indexOf(keyword) != -1){ newList.push(item) } }) return newList } 2.filter item对象就是遍历数组中的一个元素,includes是es6中的新方法,在search方法中直接返回新数组 search(key
-
Vue中foreach数组与js中遍历数组的写法说明
Vue foreach数组与js中遍历数组的写法 场景 Vue中使用Axios发送get或者post请求,发送请求时需要在js中 对请求参数进行遍历并处理. 接收响应时需要对响应结果进行遍历和处理. 注意区分在vue和js中foreach数组的区别. 实现 在js中遍历数组 //定义班次详细数组 var bcglxiangxiList = new Array(); //定义班次详细对象 var bcxiangxi = {}; //循环传递的参数 bcglXiangXiListParam.forE
-
Java中高效判断数组中是否包含某个元素的几种方法
目录 检查数组是否包含某个值的方法 使用List 使用Set 使用循环判断 使用Arrays.binarySearch() 时间复杂度 使用一个长度为1k的数组 使用一个长度为10k的数组 总结 补充 使用ArrayUtils 完整测试代码 长字符串数据 如何检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作.同时,这个问题在Stack Overflow中也是一个非常热门的问题.在投票比较高的几个答案中给出了几种不同的方法,但是他们的时间复杂度也是各不相同
-
JavaScript中数组去重常用的五种方法详解
目录 1.对象属性(indexof) 2.new Set(数组) 3.new Map() 4.filter() + indexof 5.reduce() + includes 补充 原数组 const arr = [1, 1, '1', 17, true, true, false, false, 'true', 'a', {}, {}]; 1.对象属性(indexof) 利用对象属性key排除重复项 遍历数组,每次判断新数组中是否存在该属性,不存在就存储在新数组中 并把数组元素作为key,最后返
-
JavaScript中数组去除重复的三种方法
废话不多说了,具体方法如下所示: 方法一:返回新数组每个位子类型没变 function outRepeat(a){ var hash=[],arr=[]; for (var i = 0; i < a.length; i++) { hash[a[i]]!=null; if(!hash[a[i]]){ arr.push(a[i]); hash[a[i]]=true; } } console.log(arr); } outRepeat([2,4,4,5,"a","a"
随机推荐
- JS实现关键字搜索时的相关下拉字段效果
- Flex中如何动态生成DataGrid以及动态生成表头
- 手把手教你用Hexo+Github搭建属于自己的博客(详细图文)
- ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
- jQuery powerFloat万能浮动层下拉层插件使用介绍
- IOS实现上滑隐藏NvaigtionBar而下拉则显示效果
- 关于WPF异步MVVM等待窗体的介绍
- Android编程开发之TextView单击链接弹出Activity的方法
- android调试工具adb命令大全
- 详解C语言中freopen()函数和fclose()函数的用法
- solaris操作系统做c应用程序开发步骤
- MySQL中联表更新与删除的语法介绍
- 解析mysql中的auto_increment的问题
- PHP中获取文件扩展名的N种方法小结
- JSP教程(一)
- CMD命令行将当前磁盘所有文件名写入到文本文件的方法
- mongodb replica set 配置高性能多服务器详解
- jQuery实现类似滑动门切换效果的层切换
- js图片轮播手动切换效果
- Jexus部署.Net Core项目