declare -a MY_ARRAY=()
在bash中以这种方式声明数组是否会将所有数组元素初始化为0?
如果没有,如何将数组元素初始化为0?
您的示例将声明/初始化一个空数组。
如果要初始化数组成员,请执行以下操作:
declare -a MY_ARRAY=(0 0 0 0) # this initializes an array with four members
如果要初始化具有100个成员的数组,可以执行以下操作:
declare -a MY_ARRAY=( $(for i in {1..100}; do echo 0; done) )
请记住,bash中的数组不是固定长度的(索引也不必是连续的)。因此,除非知道数字应为多少,否则无法初始化数组的 所有 成员。