插入字符到指定字符数组中指定位置

为了简便直接都固定 字符数组 和 要插入的字符和插入的位置

本例中;固定插入 k 字符,插入位置 3
也就是数组元素下标2的那个元素

插入前的字符数组 A B C D E
插入后要的结果   A B K C D
  • 这类似于现实生活中的插队,假设你插入到其中,在你之后的人都会往后退一步,
    在程序中也实现类似效果就好了,在数组中最后一个人会被挤出去,因为数组长度确定后是不能更改的。
    它只能容纳这么多元素。
		
		char[] ch = {'A', 'B', 'C', 'D', 'E'};
		
		char c = 'K';//要插入的字符
		
		int  index = 3; //要插入的位置
	
		for(int i = ch.length-1; i > index-1; i--){
			
			//前面一个赋值给后面一个
			//实现了都移动一位
			ch[i] = ch[i-1];

		}
  • 循环思路讲解:
  • 变量 i 的初值为 字符数组最后一个元素下标(ch.length)获取字符数组长度
  • 循环条件 i > index - 1 (index -1)是要插入字符的位置下标,条件控制了循环在遍历到要插入的字符位置之前。
  • i - - 这个不需解释了(是为了遍历数组时从i初值(作为数组元素下标)时往前面遍历数组)
  • ch[i] = ch[i-1] 实现了把字符数组前面一个元素的字符赋值给后面一个,后面附上笔者的灵魂画手来解释
    在这里插入图片描述
  • 这是正确的; 循环已经帮我们把从要插入的位置都往后移动了一格,
  • 最后我们只需要执行 ch[ index -1 ] = c;为要指定插入的位置插入指定的字符就好了。
  • 最终结果就是希望的结果了。最终结果:A B K C D;
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值