当前位置:网站首页>数组!!!
数组!!!
2022-08-08 18:47:00 【1701y】
数组
定义
数组是一列数的集合,我们使用索引来区分它
索引是从0开始的,0 1 2 3 4 …
数组的分类
普通数组:不需要声明直接定义,下标索引只能是整数
关联数组:需要用declare -A声明否则系统不识别,索引可以是字符串
数组定义方法
方法一
数组名=(value0 value1 value2 …)
[[email protected] opt]#a=(10 20 30 40 50 60 70 80)
[[email protected] opt]#echo ${a[1]}
20
[[email protected] opt]#echo ${a[2]}
30
[[email protected] opt]#
方法二
数组名=([0]=value [1]=value [2]=value …)
[[email protected] etc]#okok=([0]=1 [1]=2 [2]=3)
[[email protected] etc]#echo ${okok[0]}
1
[[email protected] etc]#echo ${okok[1]}
2
方法三
列表名=“value0 value1 value2 …”
数组名=($列表名)
[[email protected] opt]#b="80 90 100 110"
[[email protected] opt]#echo ${b[@]}
80 90 100 110
方法四
数组名[0]=“value”
数组名[1]=“value”
数组名[2]=“value”
[[email protected] etc]#c[0]=5
[[email protected] etc]#echo ${c[0]}
5
[[email protected] etc]#c[1]=9
[[email protected] etc]#echo ${c[1]}
9
[[email protected] etc]#echo ${c[2]}
数组内容的查看
使用echo查看
echo ${a[*]}
获取数组长度
[[email protected] etc]#a=(10 20 30 40)
[[email protected] etc]#echo ${#a[*]}
4
[[email protected] etc]#
获取某下标赋值
通过输入正确的索引,可检测索引的值
[[email protected] etc]#echo ${a[@]}
10 20 30 40
[[email protected] etc]#echo ${a[0]}
10
[[email protected] etc]#echo ${a[1]}
20
[[email protected] etc]#
数组遍历
#!/vin/bash
a=(10 20 30 40 50)
for i in ${a[@]}
do
echo $i
done
数组切片
echo $ {a[@] :1:3} 获取${数组名〔@或*]:起始位置:长度}的值
[[email protected] shuzu]#a=(10 20 30 40 50)
[[email protected] shuzu]#echo ${a[@]}
10 20 30 40 50
[[email protected] shuzu]#echo ${a[@]:1:3}
20 30 40
[[email protected] shuzu]#
数组替换
echo $ {a[@]/40/99} #$ {数组名[@或*]/查找字符/替换字符}
并不会替换数组原有内容,要实现改变原有数组,可重新赋值实现
[[email protected] shuzu]#a=(10 20 30 40 50)
[[email protected] shuzu]#echo ${a[@]/40/99}
10 20 30 99 50
[[email protected] shuzu]#echo ${a[@]}
10 20 30 40 50
数组删除
#删除数组
[[email protected] shuzu]#a=(10 20 30 40 50)
[[email protected] shuzu]#echo ${a[@]}
10 20 30 40 50
[[email protected] shuzu]#unset a
[[email protected] shuzu]#echo ${a[@]}
#删除元素
[[email protected] shuzu]#a=(10 20 30 40 50)
[[email protected] shuzu]#echo ${a[@]}
10 20 30 40 50
[[email protected] shuzu]#unset a[0]
[[email protected] shuzu]#echo ${a[@]}
20 30 40 50
边栏推荐
- Laravel 5.8笔记
- hdu1042 N!(大数)
- Rethinking HTAP database caused by rereading GPDB and TiDB papers
- 21天学习挑战赛——机器学习02
- Michael Bronstein 系列长文:迈向几何深度学习(之三)——第一个几何神经网络模型
- el-tree设置单选,点击完成后收起
- Advanced CAD practice (2)
- JVM内存模型和结构详解(五大模型图解)
- Performance optimization | CPU power management from the perspective of ping delay
- ADB安装方法:
猜你喜欢
PG's huge page
Fortinet new cloud native protection products launched amazon cloud platform of science and technology
WPF DataGrid 展示数据
Shell脚本三剑客(grep、sed、awk)
Laravel 5.8笔记
APICloud AVM wraps date and time selection components
精彩来袭!鲲鹏开发者创享日·长沙站来啦
十六、一起学习Lua 文件 I/O
El - tree set radio, click finish after assemble
行政区划代码(道路要素)
随机推荐
Redis之SDS数据结构
黑磷量子点/无机荧光量子点/石墨烯量子点水凝胶/量子点/纳米水凝胶荧光探针的研究制备
用工具实现 Mock API 的整个流程
How to add F4 Value Help to the input parameters of the report in the ABAP report
shake数据库中 启动报这个错,请问是哪里配置有问题吗?
证券开户选哪个券商平台比较好,哪个更安全
ABAP 报表中如何给报表的输入参数增添 F4 Value Help 试读版
浅谈C语言简单实现二分查找
FTP服务初探
面试官:synchronized 和 Lock 的区别是什么?
面试突击:输入URL之后会执行什么流程?
openEuler资源利用率提升之道02:典型应用下的效果
关于求最小公倍数的三种常用方法
OpenSSH生成的私钥如何在putty中使用?
Monaco-Editor 多人协作 编辑器
几何g6将搭载harmonyos系统,产品竞争力全面升级
【761. 特殊的二进制序列】
全栈开发可能需要的环境及工具
Implementing Forward+ in Unity URP
APICloud AVM 封装日期和时间选择组件