分界点:以下内容需要更改,正常放假更改
数组:
数组的作用:可以一次性的定义多个变量,数组的长度是不限的
数组的元素类型:int string float.
就是形成变量池,可以随时的遍历和使用
数组的写法:
test=(wk zrf zpl xtc fkc)
echo ${test[*]}
test1=([0]=1 [1]=2 [2]=3)
echo ${test1[*]}
0 1 2 #是数组的下标,下标索引都是从0开始的
索引下标是从0开始,0对应数组当中的第一个元素。
获取数组的长度:echo ${#test[*]}
读取下标的值:echo ${test[0]}
进行数组的遍历
arr=(1 2 3 4 5)
现在要求1.打印
2.每个值分别*2
3.将新值形成一个新的数组,数组名可以不变
数组的切片:
取数组当中某一段元素的值:echo ¥{test[*]:这是从第几个开始的下标:这是取多少个值}
echo ${arr[*]:4:3}
数组的替换:
临时替换:echo ${arr[*]/4/66}
永久替换:arr=(${arr[*]/4/66}) 或test[3]=44
删除数组:unset 数组名 #例如:unset arr
unset test[3]
追加元素:在原有的基础上,追加新的元素
test[5]=6
或者test[${#test[*]}]=7
或者test+=(test1 test2)待添加的元素必须用()括起来,而且多个元素必须要用空格分隔
函数往数组当中传参:
冒泡排序:数据在数组当中,按照从小到大,或者从大到小。不断向前移动或者向后移动
实现逻辑:
从小到大为例:2 4 3 1 7 5
两个相邻的元素进行比较,大的要向后,小的向前。数组的索引下标对应的值也要换
需要两层循环控制,外层控制循环次数,内层实现元素比较与位置交接