数组元素添加、移除、是否包含
1、插入数组元素
-
打开
关卡蓝图,在空白处添加鼠标左键、打印输出、Age 03数组 *2
-
从
Age 03节点处分别拖线添加插入和get(引用)节点
插入节点中,上方的填写需要插入的元素值,下方填写元素值所插入的下标 -
从
Age 03拖线(或者新建一个Age 03节点)到空白处,添加长度节点,连接到插入节点的下方和Get(引用)的下方
-
将
Get(引用)获取到的数值和执行线连接到打印输出
-
编译后运行

会发现没有读取成功,
Esc退出后
这是因为插入元素的时候,数组的长度已经+1,这个时候我们再用数组长度来读取的话会下标超出数组的长度。所以我们应该再读取之前将长度-1,或者使用
获取最后元素的下标来读取 -
将读取元素的下标-1 并连线

-
编译后运行

成功添加并读取
2、移除元素
-
打开
关卡蓝图,在空白处添加鼠标左键、打印输出、Age 03数组节点
-
从
Age 03拖线到空白处,检索移除,添加移除索引节点
-
将线连接

移除索引下方应当填写需要移除的元素的下标可以通过
查找项目节点,检索到想要删除的元素的下标,并传入移除索引节点 -
从
Age 03处拖线到空白处,添加查找项目节点,输入想要查找的元素后传入移除索引下方
-
从
Age 03处拖线到空白处,并添加Get(引用)节点,将查找项目的输出连接到Get(引用)节点,并将Get(引用)输出连接到打印输出节点
-
编译后运行

检查节点后发现,当移除完元素之后,再执行
Get(引用)节点,而因为元素已经被删除,所以查找项目节点无法查找到下标,返回-1导致报错
需要添加变量,保存之前获取到的下标
-
添加
int整数型变量,并添加设置int节点,并连接到查找项目的输出
-
将
设置int节点的输出口连接到移除索引和Get(引用)节点的输入
-
编译后运行

正常移除数组的元素,并且获取到。
但是如果想要删除的是数组最后一个元素,会下标越界



-
还是因为当我们将数组最后一个元素移除时,下标大于数组的下标导致无法读取到。或者当
查找项目没有查找到元素时,会返回-1,也会导致下标越界。此时我们需要使用分支节点来判断是否会越界
以上分支的意思是
鼠标左键事件,查找
25元素,将返回的值赋值给int变量,然后分支判断,返回的值是否等于-1,如果等于-1则输出没有找到元素。如果不等于-1则删除返回值的下标。之后再次分支判断,int的值是否大于等于Age 03数组的长度(因为数组的下标是从0开始,也就是说如果数组中有五个元素,则数组的最大下标是4),如果大于等于Age 03数组的长度,则获取int的-1元素;否则输出Age 03数组的int下标元素值。 -
编译后运行

第一次删除了数组的最后一个元素
30然后输出了删除后的最后一个元素。之后因为没有在数组中找到元素而直接输出
没有找到元素
3、判断数组中是否存在指定元素
与 查找项目 不同的是,查找元素 最终返回的是元素所在的下标,如果不存在则返回 -1 ;包含项目(判断数组中是否存在指定元素) 最终返回的是布尔值的结果,如果存在元素,则返回 true 否则返回 false
-
打开
关卡蓝图,在空白处添加鼠标左键、打印输出*2 、Age 03数组
-
从
Age 03处拖线到空白处,添加包含项目和分支节点,并将包含项目的输出值连接到分支节点
-
设置
包含项目搜索的值,并将其余线连接
-
编译后运行
