如何使用 for 循环在第 i 个索引处更新数组的元素?



我正在尝试通过数组循环并在第I个索引处更新元素。我试了好几种方法,但结果都是错误的。

这里我试着给每个元素加1

TEST_ARR=(0 1 2 3 4 5 6 7 8 9)
for (( i=0; i<${#TEST_ARR[@]}; i++ )); do
${TEST_ARR[$i]}++
done

这里我尝试将每个元素设置为不同的值。

TEST_ARR=(0 1 2 3 4 5 6 7 8 9)
for (( i=0; i<${#TEST_ARR[@]}; i++ )); do
${TEST_ARR[$i]}=0
done

您需要在(())中放入算术表达式。

当你赋值给一个变量时,你不能把$放在它的前面。

for (( i=0; i<${#TEST_ARR[@]}; i++ )); do
((TEST_ARR[$i]++))
done
for (( i=0; i<${#TEST_ARR[@]}; i++ )); do
TEST_ARR[$i]=0
done

最新更新