Copy code
$arr = array(0, 3, 5, 0, 0, 7, 1, 9, 0, 8)
foreach ($arr as $key =>$val) {
if ($val === 0) {
array_push($arr, 0)
array_splice($arr, $key, 1)
}
}
print_r($arr)
在本示例中,通过 foreach 循环遍历数组 $arr,并通过 if 语句检查每个元素是否为 0。如果 $val 元素为 0,则使用 array_push() 函数将一个 0 添加到数组的末尾,再使用 array_splice() 函数移除这个 0 的原始元素。
最后,使用 print_r() 函数打印数组 $arr 的新值。运行上述代码,输出为:
Copy code
Array
(
[0] =>3
[1] =>5
[2] =>7
[3] =>1
[4] =>9
[5] =>8
[6] =>0
[7] =>0
[8] =>0
[9] =>0
)
可以看到,输出结果数组正确地将原始数组中的所有 0 移动到了末尾,并保持了所有其他元素的相对位置不变。
不完全正确。`insert()` 方法是在列表中特定位置插入元素,而非在列表末尾追加指定元素。具体来说,`insert()` 方法接受两个参数:要插入的位置和要插入的元素。该方法将在指定位置插入元素,并将原来位置上的元素及其后面的元素向右移动一个位置。因此,使用 `insert()` 方法可以在列表中任意位置插入元素。
而向列表未尾追加指定元素的方法是 `append()` 方法。该方法只接受一个参数,即要追加的元素。它将把元素添加到列表的末尾,而无需指定位置。
例如,在以下 Python 代码中,我们先调用 `append()` 方法将元素追加到列表末尾,然后使用 `insert()` 方法将新元素插入到列表第二个位置:
```python
my_list = [1, 2, 3]
my_list.append(4) # 在末尾添加元素 4
my_list.insert(1, 'a') # 在第二个位置插入元素 'a'
print(my_list)
```
输出结果为 `[1, 'a', 2, 3, 4]`。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)