数组的常用方法

数组的常用方法


改变原数组的方法

  1. splice() 添加/删除数组元素
    语法:arrayObject.splice(index,howmany,item1,…,itemX)
    参数:
    1.index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
    2.howmany:可选。要删除的项目数量。如果设置为 0,则不会删除项目。
    3.item1, …, itemX:可选。向数组添加的新项目。

返回值: 有元素被删除,返回由被删除项目的新数组,没有元素被删除返回的是空数组。


2.sort() 数组排序
语法:arrayObject.sort(sortby)
参数:
1.sortby 可选。规定排序顺序。必须是函数。。

返回值: 返回排序后的新数组。


  1. pop() 删除一个数组中的最后的一个元素
    语法:arrayObject.pop()
    参数:无

返回值: 返回被删除的元素,字符串。


  1. shift() 删除数组的第一个元素
    语法:arrayObject.shift()
    参数:无

返回值: 返回被删除的元素。


  1. push() 向数组的末尾添加元素
    语法:arrayObject.push(newelement1,newelement2,…,newelementX)
    参数:
    1.newelement1 必需。要添加到数组的第一个元素。
    2.newelement2 可选。要添加到数组的第二个元素。
    3.newelementX 可选。可添加若干个元素。

返回值: 返回添加元素后新数组的长度。


  1. unshift() 向数组的开头添加一个或更多元素
    语法:arrayObject.unshift(newelement1,newelement2,…,newelementX)
    参数:
    1.newelement1 必需。要添加到数组的第一个元素。
    2.newelement2 可选。要添加到数组的第二个元素。
    3.newelementX 可选。可添加若干个元素。

返回值: arrayObject 的新长度。


  1. reverse() 颠倒数组中元素的顺序
    语法:arrayObject.reverse()
    参数:无

返回值: 颠倒后的新数组。


  1. copyWithin() 指定位置的成员复制到其他位置
    语法:array.copyWithin(target, start = 0, end = this.length)
    参数:
    1.target(必需):从该位置开始替换数据。如果为负值,表示倒数。
    2.start(可选):从该位置开始读取数据,默认为 0。如果为负值,表示倒数。
    3.end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数。

返回值: 返回当前数组。


  1. fill() 填充数组
    语法:array.fill(value, start, end)
    参数:
    1.value 必需。填充的值。
    2.start 可选。开始填充位置。
    3.end 可选。停止填充位置 (默认为 array.length)

返回值: 返回当前数组。


不改变原数组的方法

  1. slice() 浅拷贝数组的元素
    语法:array.slice(begin, end);
    参数:
    1.begin(可选): 索引数值,接受负值,从该索引处开始提取原数组中的元素,默认值为0。
    2.end(可选):索引数值(不包括),接受负值,在该索引处前结束提取原数组元素,默认值为数组末尾(包括最后一个元素)。

返回值: 返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象,且原数组不会被修改。


  1. join() 数组转字符串
    语法:array.join(str)
    参数:
    1.str(可选): 指定要使用的分隔符,默认使用逗号作为分隔符。

返回值: 返回生成的字符串。
3. concat() 合并两个或多个数组
语法:var newArr =oldArray.concat(arrayX,arrayX,…,arrayX)
参数:
1.arrayX(必须):该参数可以是具体的值,也可以是数组对象。可以是任意多个。

返回值: 返回返回合并后的新数组。


  1. indexOf() 查找数组是否存在某个元素
    语法:array.indexOf(searchElement,fromIndex)
    参数:
    1.searchElement(必须):被查找的元素
    2.fromIndex(可选):开始查找的位置(不能大于等于数组的长度,返回-1),接受负值,默认值为0。

返回值: 返回下标


  1. 语法:arr.lastIndexOf(searchElement,fromIndex)
    参数:
    1.searchElement(必须): 被查找的元素
    2.fromIndex(可选): 逆向查找开始位置,默认值数组的长度-1,即查找整个数组。

返回值: 方法返回指定元素,在数组中的最后一个的索引,如果不存在则返回 -1。(从数组后面往前查找)


  1. includes() 查找数组是否包含某个元素
    语法:array.includes(searchElement,fromIndex=0)
    参数:
    1.searchElement(必须):被查找的元素
    2.fromIndex(可选):默认值为0,参数表示搜索的起始位置,接受负值。正值超过数组长度,数组不会被搜索,返回false。负值绝对值超过数组长度,重置从0开始搜索。

返回值: 返回布尔值


注意点:返回值和把原数组改成什么样子是两回事,并且splice方法的返回一定是个数组,没有删除项时返回一个空数组;sort方法的返回值和原数组被排序后改变的数组一样,pop方法的返回值是字符串
在这里插入图片描述
在这里插入图片描述

.

### Java 数组常用方法 #### 1. 数组转字符串 通过 `Arrays.toString()` 方法可以将数组转换为字符串,方便打印或调试。 ```java int[] numbers = {1, 2, 3, 4, 5}; System.out.println(Arrays.toString(numbers)); // 输出 "[1, 2, 3, 4, 5]"[^1] ``` #### 2. 数组排序 使用 `Arrays.sort()` 方法可以对数组进行升序排序。 ```java int[] numbers = {5, 3, 1, 4, 2}; Arrays.sort(numbers); System.out.println(Arrays.toString(numbers)); // 输出 "[1, 2, 3, 4, 5]"[^3] ``` #### 3. 数组填充 `Arrays.fill()` 方法可以将数组中的所有元素设置为指定值。 ```java int[] array = new int[5]; Arrays.fill(array, 7); System.out.println(Arrays.toString(array)); // 输出 "[7, 7, 7, 7, 7]"[^1] ``` #### 4. 数组比较 `Arrays.equals()` 方法用于比较两个数组是否相等。 ```java int[] array1 = {1, 2, 3}; int[] array2 = {1, 2, 3}; boolean areEqual = Arrays.equals(array1, array2); // true ``` #### 5. 数组搜索 `Arrays.binarySearch()` 方法可以在已排序的数组中查找指定元素的索引。如果数组未排序,结果可能正确。 ```java int[] sortedArray = {1, 2, 3, 4, 5}; int index = Arrays.binarySearch(sortedArray, 3); // 返回 2[^1] ``` #### 6. 数组复制 `Arrays.copyOf()` 和 `Arrays.copyOfRange()` 方法可以用来复制数组或其部分。 ```java int[] original = {1, 2, 3, 4, 5}; int[] copy = Arrays.copyOf(original, original.length); // 完整复制 int[] rangeCopy = Arrays.copyOfRange(original, 1, 3); // 复制索引 1 到 2 的元素 System.out.println(Arrays.toString(copy)); // 输出 "[1, 2, 3, 4, 5]" System.out.println(Arrays.toString(rangeCopy)); // 输出 "[2, 3]" ``` #### 7. 将数组转换为 `ArrayList` 可以通过 `Arrays.asList()` 方法数组转换为固定大小的列表,然后将其传递给 `ArrayList` 的构造函数以创建可变列表。 ```java String[] array = {"a", "b", "c"}; ArrayList<String> list = new ArrayList<>(Arrays.asList(array)); System.out.println(list); // 输出 "[a, b, c]"[^2] ``` #### 8. 深度操作多维数组 对于多维数组,可以使用 `Arrays.deepToString()` 方法来打印整个数组结构。 ```java int[][] matrix = {{1, 2}, {3, 4}}; System.out.println(Arrays.deepToString(matrix)); // 输出 "[[1, 2], [3, 4]]" [^1] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值