在循环并在数组中打印它们时向每个值添加文本?

在循环并在数组中打印它们时向每个值添加文本?

我试图在循环遍历数组时向数组中的每个值添加文本。

我试过这个:

for value in "${array[@]}"
do
    echo "--" "$value"
done

只会添加一次“--”。这是输出的开头。

我也尝试过 printf ,如下所示:

printf "%s--" "${array[@]}"

相同的结果。

我这样添加我的值:

array+="1"
array+="2"
array+="3"

我这样声明我的数组:

array=()

还尝试过:

declare -a array

这是正确的行为,还是我做错了什么?

答案1

要添加到数组中,需要使用括号:

array+=(1)
array+=(2)

您使用的方式将所有值添加到数组的第一个元素。

相关内容