linux shell中的语法和普通编程语言 c/c++ java 的不太一样,平时用的不多,所以总是记不住,写脚本才会去查怎么用。
今天突然被问到数组怎么去遍历。平时写shell脚本也经常遍历数组,但是一下没答上来,被鄙视了。
所以平时学习还是好好总结吧,不能每次都问度娘谷爷。IT 知识体系较为庞大,细节的东西也太多,平时遇到问题应该的多总结记笔记。
linux 中定义一个数据的语法为:
variable=(arg1 arg2 arg3 ....)
中间用空格分开。数组的下标从0开始。
1 获取下标为n的元素:
variable[n]
而且不存在数组下标溢出的情况,如果 n>= 数组的长度,那么为空,不会报错。
2 获取数组长度
${#variable[@]}
或者
${#variable[*]}
那么如何用for遍历呢?一共有两种方式:
1 for i in ${variable[@]}; do
# do something.... done
2 for i in $(seq 0 ${#variable[@]}); do
e=${variable[$i]} # do something.... done
以上两种方法 把 @ 换成 * 也行。
以上这篇linux shell 中数组的定义和for循环遍历的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
问题内容: 以下是提供输出的代码段:。由于访问列表中的数字3,我期望获得输出。在线给出的解释是“每次迭代中更改的价值”,但我不太了解如何或为什么。任何解释都很好! 问题答案: 这里发生的是一个列表在循环过程中发生了变异。 让我们考虑以下代码片段: 输出为: 每次迭代: 从内部指针当前指向的位置读取值 立即将其分配给列表中的最后一个元素 在最后一个元素打印在标准输出上之后 就像这样: 内部指针指向第
问题内容: 我有一个具有1 2 3 4 5值的数组。 现在我想以循环方式遍历它。像我想打印2 3 4 5 1或3 4 5 1 2或5 1 2 3 4等等。有什么 算法 吗? 编辑: 我想以循环方式打印所有组合。我不想在初始阶段说明起点。 问题答案: (如果要从向下迭代数组,请在数组下标表达式中更改为。) 我应该注意,就执行速度而言,这可能不是表达循环的最有效方法。但是,差异很小,并且 很可能无关紧
本文向大家介绍JS简单循环遍历json数组的方法,包括了JS简单循环遍历json数组的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS简单循环遍历json数组的方法。分享给大家供大家参考,具体如下: 例如数据库里面的json字符串是这样的 上面的是js的,下面的是jquery来解析json字符串, 循环的话,和上面一样 更多关于JavaScript相关内容可查看本站专题:《Java
问题内容: 我正在尝试遍历以下内容 我到目前为止所得到的: 有任何想法吗? 问题答案: 在您的代码中,元素是JSON对象的数组,而不是JSON对象本身。元件,和是JSON的一部分内部对象JSON阵列。 您需要遍历数组 版画 我不知道您的代码片段来自何处。
问题内容: 这是我的代码: 我想按降序打印数组,而不是按升序打印(从数组的最后一个元素到第一个元素),但我只会抛出此错误: 为什么会这样呢?我希望通过使用myArray.length将计数器设置为8,代码将只打印出数组的第8个元素,然后继续打印之前的那个元素。 问题答案: 在Java中数组索引从到,不给,因此,你应该相应地分配您的变量,并使用正确的比较操作。 您的循环应如下所示:
本文向大家介绍JS循环遍历JSON数据的方法,包括了JS循环遍历JSON数据的方法的使用技巧和注意事项,需要的朋友参考一下 JSON数据如:{"options":"[{/"text/":/"王家湾/",/"value/":/"9/"},{/"text/":/"李家湾/",/"valu e/":/"10/"},{/"text/":/"邵家湾/",/"value/":/"13/"}]"} 用js可以写