1e41f4b71Sopenharmony_ci# @ohos.util.List (线性容器List) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ciList底层通过单向链表实现,每个节点有一个指向后一个元素的引用。当需要查询元素时,必须从头遍历,插入、删除效率高,查询效率低。List允许元素为null。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ciList和[LinkedList](js-apis-linkedlist.md)相比,LinkedList是双向链表,可以快速地在头尾进行增删,而List是单向链表,无法双向操作。 6e41f4b71Sopenharmony_ci 7e41f4b71Sopenharmony_ci> **注意:** 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> 在List中使用\[index\]的方式虽然能够获取对应位置的元素,但这会导致未定义结果。推荐使用get()方法。 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci**推荐使用场景:** 当需要频繁的插入删除时,推荐使用List高效操作。 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci文档中存在泛型的使用,涉及以下泛型标记符:<br> 14e41f4b71Sopenharmony_ci- T:Type,类 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci> **说明:** 17e41f4b71Sopenharmony_ci> 18e41f4b71Sopenharmony_ci> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci## 导入模块 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ci```ts 24e41f4b71Sopenharmony_ciimport { List } from '@kit.ArkTS'; 25e41f4b71Sopenharmony_ci``` 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci 28e41f4b71Sopenharmony_ci## List 29e41f4b71Sopenharmony_ci 30e41f4b71Sopenharmony_ci### 属性 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 33e41f4b71Sopenharmony_ci 34e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 35e41f4b71Sopenharmony_ci 36e41f4b71Sopenharmony_ci| 名称 | 类型 | 可读 | 可写 | 说明 | 37e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | -------- | 38e41f4b71Sopenharmony_ci| length | number | 是 | 否 | List的元素个数。 | 39e41f4b71Sopenharmony_ci 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci### constructor 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ciconstructor() 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ciList的构造函数。 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ci**错误码:** 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 56e41f4b71Sopenharmony_ci| -------- | -------- | 57e41f4b71Sopenharmony_ci| 10200012 | The List's constructor cannot be directly invoked. | 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci**示例:** 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci```ts 62e41f4b71Sopenharmony_cilet list: List<string | number | boolean | object> = new List(); 63e41f4b71Sopenharmony_ci``` 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci 66e41f4b71Sopenharmony_ci### add 67e41f4b71Sopenharmony_ci 68e41f4b71Sopenharmony_ciadd(element: T): boolean 69e41f4b71Sopenharmony_ci 70e41f4b71Sopenharmony_ci在List尾部插入元素。 71e41f4b71Sopenharmony_ci 72e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 73e41f4b71Sopenharmony_ci 74e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 75e41f4b71Sopenharmony_ci 76e41f4b71Sopenharmony_ci**参数:** 77e41f4b71Sopenharmony_ci 78e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 79e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 80e41f4b71Sopenharmony_ci| element | T | 是 | 添加进去的元素。 | 81e41f4b71Sopenharmony_ci 82e41f4b71Sopenharmony_ci**返回值:** 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci| 类型 | 说明 | 85e41f4b71Sopenharmony_ci| -------- | -------- | 86e41f4b71Sopenharmony_ci| boolean | 插入成功返回true,否则返回false。 | 87e41f4b71Sopenharmony_ci 88e41f4b71Sopenharmony_ci**错误码:** 89e41f4b71Sopenharmony_ci 90e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 93e41f4b71Sopenharmony_ci| -------- | -------- | 94e41f4b71Sopenharmony_ci| 10200011 | The add method cannot be bound. | 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci**示例:** 97e41f4b71Sopenharmony_ci 98e41f4b71Sopenharmony_ci```ts 99e41f4b71Sopenharmony_cilet list: List<string | number | boolean | object> = new List(); 100e41f4b71Sopenharmony_cilet result1 = list.add("a"); 101e41f4b71Sopenharmony_cilet result2 = list.add(1); 102e41f4b71Sopenharmony_cilet b = [1, 2, 3]; 103e41f4b71Sopenharmony_cilet result3 = list.add(b); 104e41f4b71Sopenharmony_ciclass C { 105e41f4b71Sopenharmony_ci name: string = '' 106e41f4b71Sopenharmony_ci age: string = '' 107e41f4b71Sopenharmony_ci} 108e41f4b71Sopenharmony_cilet c: C = {name : "Dylan", age : "13"}; 109e41f4b71Sopenharmony_cilet result4 = list.add(c); 110e41f4b71Sopenharmony_cilet result5 = list.add(false); 111e41f4b71Sopenharmony_ci``` 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci### insert 114e41f4b71Sopenharmony_ci 115e41f4b71Sopenharmony_ciinsert(element: T, index: number): void 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci在长度范围内任意位置插入指定元素。 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci**参数:** 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 126e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 127e41f4b71Sopenharmony_ci| element | T | 是 | 插入元素。 | 128e41f4b71Sopenharmony_ci| index | number | 是 | 插入的位置索引。需要小于等于int32_max即2147483647。 | 129e41f4b71Sopenharmony_ci 130e41f4b71Sopenharmony_ci**错误码:** 131e41f4b71Sopenharmony_ci 132e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 133e41f4b71Sopenharmony_ci 134e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 135e41f4b71Sopenharmony_ci| -------- | -------- | 136e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 137e41f4b71Sopenharmony_ci| 10200001 | The value of index is out of range. | 138e41f4b71Sopenharmony_ci| 10200011 | The insert method cannot be bound. | 139e41f4b71Sopenharmony_ci 140e41f4b71Sopenharmony_ci**示例:** 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ci```ts 143e41f4b71Sopenharmony_cilet list: List<string | number | boolean> = new List(); 144e41f4b71Sopenharmony_cilist.insert("A", 0); 145e41f4b71Sopenharmony_cilist.insert(0, 1); 146e41f4b71Sopenharmony_cilist.insert(true, 2); 147e41f4b71Sopenharmony_ci``` 148e41f4b71Sopenharmony_ci 149e41f4b71Sopenharmony_ci### has 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_cihas(element: T): boolean 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ci判断此List中是否含有该指定元素。 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 156e41f4b71Sopenharmony_ci 157e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 158e41f4b71Sopenharmony_ci 159e41f4b71Sopenharmony_ci**参数:** 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 162e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 163e41f4b71Sopenharmony_ci| element | T | 是 | 指定元素。 | 164e41f4b71Sopenharmony_ci 165e41f4b71Sopenharmony_ci**返回值:** 166e41f4b71Sopenharmony_ci 167e41f4b71Sopenharmony_ci| 类型 | 说明 | 168e41f4b71Sopenharmony_ci| -------- | -------- | 169e41f4b71Sopenharmony_ci| boolean | 包含指定元素返回true,否则返回false。 | 170e41f4b71Sopenharmony_ci 171e41f4b71Sopenharmony_ci**错误码:** 172e41f4b71Sopenharmony_ci 173e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 174e41f4b71Sopenharmony_ci 175e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 176e41f4b71Sopenharmony_ci| -------- | -------- | 177e41f4b71Sopenharmony_ci| 10200011 | The has method cannot be bound. | 178e41f4b71Sopenharmony_ci 179e41f4b71Sopenharmony_ci**示例:** 180e41f4b71Sopenharmony_ci 181e41f4b71Sopenharmony_ci```ts 182e41f4b71Sopenharmony_cilet list: List<string> = new List(); 183e41f4b71Sopenharmony_cilist.add("squirrel"); 184e41f4b71Sopenharmony_cilet result = list.has("squirrel"); 185e41f4b71Sopenharmony_ci``` 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ci### get 188e41f4b71Sopenharmony_ci 189e41f4b71Sopenharmony_ciget(index: number): T 190e41f4b71Sopenharmony_ci 191e41f4b71Sopenharmony_ci根据下标获取List中的元素。 192e41f4b71Sopenharmony_ci 193e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 194e41f4b71Sopenharmony_ci 195e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 196e41f4b71Sopenharmony_ci 197e41f4b71Sopenharmony_ci**参数:** 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 200e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 201e41f4b71Sopenharmony_ci| index | number | 是 | 要查找的下标。需要小于等于int32_max即2147483647。 | 202e41f4b71Sopenharmony_ci 203e41f4b71Sopenharmony_ci**返回值:** 204e41f4b71Sopenharmony_ci 205e41f4b71Sopenharmony_ci| 类型 | 说明 | 206e41f4b71Sopenharmony_ci| -------- | -------- | 207e41f4b71Sopenharmony_ci| T | 根据下标查找到的元素。 | 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ci**错误码:** 210e41f4b71Sopenharmony_ci 211e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 212e41f4b71Sopenharmony_ci 213e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 214e41f4b71Sopenharmony_ci| -------- | -------- | 215e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 216e41f4b71Sopenharmony_ci| 10200011 | The get method cannot be bound. | 217e41f4b71Sopenharmony_ci 218e41f4b71Sopenharmony_ci**示例:** 219e41f4b71Sopenharmony_ci 220e41f4b71Sopenharmony_ci```ts 221e41f4b71Sopenharmony_cilet list: List<number> = new List(); 222e41f4b71Sopenharmony_cilist.add(2); 223e41f4b71Sopenharmony_cilist.add(4); 224e41f4b71Sopenharmony_cilist.add(5); 225e41f4b71Sopenharmony_cilist.add(2); 226e41f4b71Sopenharmony_cilist.add(1); 227e41f4b71Sopenharmony_cilist.add(2); 228e41f4b71Sopenharmony_cilist.add(4); 229e41f4b71Sopenharmony_cilet result = list.get(2); 230e41f4b71Sopenharmony_ci``` 231e41f4b71Sopenharmony_ci 232e41f4b71Sopenharmony_ci### getLastIndexOf 233e41f4b71Sopenharmony_ci 234e41f4b71Sopenharmony_cigetLastIndexOf(element: T): number 235e41f4b71Sopenharmony_ci 236e41f4b71Sopenharmony_ci查找指定元素最后一次出现的下标值,查找失败返回-1。 237e41f4b71Sopenharmony_ci 238e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 239e41f4b71Sopenharmony_ci 240e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 241e41f4b71Sopenharmony_ci 242e41f4b71Sopenharmony_ci**参数:** 243e41f4b71Sopenharmony_ci 244e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 245e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 246e41f4b71Sopenharmony_ci| element | T | 是 | 指定元素。 | 247e41f4b71Sopenharmony_ci 248e41f4b71Sopenharmony_ci**返回值:** 249e41f4b71Sopenharmony_ci 250e41f4b71Sopenharmony_ci| 类型 | 说明 | 251e41f4b71Sopenharmony_ci| -------- | -------- | 252e41f4b71Sopenharmony_ci| number | 返回指定元素最后一次出现的下标值,没有找到返回-1。 | 253e41f4b71Sopenharmony_ci 254e41f4b71Sopenharmony_ci**错误码:** 255e41f4b71Sopenharmony_ci 256e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 257e41f4b71Sopenharmony_ci 258e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 259e41f4b71Sopenharmony_ci| -------- | -------- | 260e41f4b71Sopenharmony_ci| 10200011 | The getLastIndexOf method cannot be bound. | 261e41f4b71Sopenharmony_ci 262e41f4b71Sopenharmony_ci**示例:** 263e41f4b71Sopenharmony_ci 264e41f4b71Sopenharmony_ci```ts 265e41f4b71Sopenharmony_cilet list: List<number> = new List(); 266e41f4b71Sopenharmony_cilist.add(2); 267e41f4b71Sopenharmony_cilist.add(4); 268e41f4b71Sopenharmony_cilist.add(5); 269e41f4b71Sopenharmony_cilist.add(2); 270e41f4b71Sopenharmony_cilist.add(1); 271e41f4b71Sopenharmony_cilist.add(2); 272e41f4b71Sopenharmony_cilist.add(4); 273e41f4b71Sopenharmony_cilet result = list.getLastIndexOf(2); 274e41f4b71Sopenharmony_ci``` 275e41f4b71Sopenharmony_ci 276e41f4b71Sopenharmony_ci### getIndexOf 277e41f4b71Sopenharmony_ci 278e41f4b71Sopenharmony_cigetIndexOf(element: T): number 279e41f4b71Sopenharmony_ci 280e41f4b71Sopenharmony_ci查找指定元素第一次出现的下标值,查找失败返回-1。 281e41f4b71Sopenharmony_ci 282e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 283e41f4b71Sopenharmony_ci 284e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 285e41f4b71Sopenharmony_ci 286e41f4b71Sopenharmony_ci**参数:** 287e41f4b71Sopenharmony_ci 288e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 289e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 290e41f4b71Sopenharmony_ci| element | T | 是 | 指定元素。 | 291e41f4b71Sopenharmony_ci 292e41f4b71Sopenharmony_ci**返回值:** 293e41f4b71Sopenharmony_ci 294e41f4b71Sopenharmony_ci| 类型 | 说明 | 295e41f4b71Sopenharmony_ci| -------- | -------- | 296e41f4b71Sopenharmony_ci| number | 返回第一次找到指定元素的下标,没有找到返回-1。 | 297e41f4b71Sopenharmony_ci 298e41f4b71Sopenharmony_ci**错误码:** 299e41f4b71Sopenharmony_ci 300e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 301e41f4b71Sopenharmony_ci 302e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 303e41f4b71Sopenharmony_ci| -------- | -------- | 304e41f4b71Sopenharmony_ci| 10200011 | The getIndexOf method cannot be bound. | 305e41f4b71Sopenharmony_ci 306e41f4b71Sopenharmony_ci**示例:** 307e41f4b71Sopenharmony_ci 308e41f4b71Sopenharmony_ci```ts 309e41f4b71Sopenharmony_cilet list: List<number> = new List(); 310e41f4b71Sopenharmony_cilist.add(2); 311e41f4b71Sopenharmony_cilist.add(4); 312e41f4b71Sopenharmony_cilist.add(5); 313e41f4b71Sopenharmony_cilist.add(2); 314e41f4b71Sopenharmony_cilist.add(1); 315e41f4b71Sopenharmony_cilist.add(2); 316e41f4b71Sopenharmony_cilist.add(4); 317e41f4b71Sopenharmony_cilet result = list.getIndexOf(2); 318e41f4b71Sopenharmony_ci``` 319e41f4b71Sopenharmony_ci 320e41f4b71Sopenharmony_ci### equal 321e41f4b71Sopenharmony_ci 322e41f4b71Sopenharmony_ciequal(obj: Object): boolean 323e41f4b71Sopenharmony_ci 324e41f4b71Sopenharmony_ci比较指定对象与此List是否相等。 325e41f4b71Sopenharmony_ci 326e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 327e41f4b71Sopenharmony_ci 328e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 329e41f4b71Sopenharmony_ci 330e41f4b71Sopenharmony_ci**参数:** 331e41f4b71Sopenharmony_ci 332e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 333e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 334e41f4b71Sopenharmony_ci| obj | Object | 是 | 用来比较的对象。 | 335e41f4b71Sopenharmony_ci 336e41f4b71Sopenharmony_ci**返回值:** 337e41f4b71Sopenharmony_ci 338e41f4b71Sopenharmony_ci| 类型 | 说明 | 339e41f4b71Sopenharmony_ci| -------- | -------- | 340e41f4b71Sopenharmony_ci| boolean | 如果对象与此列表相同返回true,否则返回false。 | 341e41f4b71Sopenharmony_ci 342e41f4b71Sopenharmony_ci**错误码:** 343e41f4b71Sopenharmony_ci 344e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 345e41f4b71Sopenharmony_ci 346e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 347e41f4b71Sopenharmony_ci| -------- | -------- | 348e41f4b71Sopenharmony_ci| 10200011 | The equal method cannot be bound. | 349e41f4b71Sopenharmony_ci 350e41f4b71Sopenharmony_ci**示例:** 351e41f4b71Sopenharmony_ci 352e41f4b71Sopenharmony_ci```ts 353e41f4b71Sopenharmony_cilet list: List<number> = new List(); 354e41f4b71Sopenharmony_cilist.add(2); 355e41f4b71Sopenharmony_cilist.add(4); 356e41f4b71Sopenharmony_cilist.add(5); 357e41f4b71Sopenharmony_cilet obj: List<number> = new List(); 358e41f4b71Sopenharmony_ciobj.add(2); 359e41f4b71Sopenharmony_ciobj.add(4); 360e41f4b71Sopenharmony_ciobj.add(5); 361e41f4b71Sopenharmony_cilet result = list.equal(obj); 362e41f4b71Sopenharmony_ci``` 363e41f4b71Sopenharmony_ci 364e41f4b71Sopenharmony_ci### removeByIndex 365e41f4b71Sopenharmony_ci 366e41f4b71Sopenharmony_ciremoveByIndex(index: number): T 367e41f4b71Sopenharmony_ci 368e41f4b71Sopenharmony_ci根据元素的下标值查找元素,并将其删除。 369e41f4b71Sopenharmony_ci 370e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 371e41f4b71Sopenharmony_ci 372e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 373e41f4b71Sopenharmony_ci 374e41f4b71Sopenharmony_ci**参数:** 375e41f4b71Sopenharmony_ci 376e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 377e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 378e41f4b71Sopenharmony_ci| index | number | 是 | 指定元素的下标值。需要小于等于int32_max即2147483647。 | 379e41f4b71Sopenharmony_ci 380e41f4b71Sopenharmony_ci**返回值:** 381e41f4b71Sopenharmony_ci 382e41f4b71Sopenharmony_ci| 类型 | 说明 | 383e41f4b71Sopenharmony_ci| -------- | -------- | 384e41f4b71Sopenharmony_ci| T | 返回被删除的元素。 | 385e41f4b71Sopenharmony_ci 386e41f4b71Sopenharmony_ci**错误码:** 387e41f4b71Sopenharmony_ci 388e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 389e41f4b71Sopenharmony_ci 390e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 391e41f4b71Sopenharmony_ci| -------- | -------- | 392e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 393e41f4b71Sopenharmony_ci| 10200001 | The value of index is out of range. | 394e41f4b71Sopenharmony_ci| 10200011 | The removeByIndex method cannot be bound. | 395e41f4b71Sopenharmony_ci 396e41f4b71Sopenharmony_ci**示例:** 397e41f4b71Sopenharmony_ci 398e41f4b71Sopenharmony_ci```ts 399e41f4b71Sopenharmony_cilet list: List<number> = new List(); 400e41f4b71Sopenharmony_cilist.add(2); 401e41f4b71Sopenharmony_cilist.add(4); 402e41f4b71Sopenharmony_cilist.add(5); 403e41f4b71Sopenharmony_cilist.add(2); 404e41f4b71Sopenharmony_cilist.add(4); 405e41f4b71Sopenharmony_cilet result = list.removeByIndex(2); 406e41f4b71Sopenharmony_ci``` 407e41f4b71Sopenharmony_ci 408e41f4b71Sopenharmony_ci### remove 409e41f4b71Sopenharmony_ci 410e41f4b71Sopenharmony_ciremove(element: T): boolean 411e41f4b71Sopenharmony_ci 412e41f4b71Sopenharmony_ci删除查找到的第一个指定的元素。 413e41f4b71Sopenharmony_ci 414e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 415e41f4b71Sopenharmony_ci 416e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 417e41f4b71Sopenharmony_ci 418e41f4b71Sopenharmony_ci**参数:** 419e41f4b71Sopenharmony_ci 420e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 421e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 422e41f4b71Sopenharmony_ci| element | T | 是 | 指定元素。 | 423e41f4b71Sopenharmony_ci 424e41f4b71Sopenharmony_ci**返回值:** 425e41f4b71Sopenharmony_ci 426e41f4b71Sopenharmony_ci| 类型 | 说明 | 427e41f4b71Sopenharmony_ci| -------- | -------- | 428e41f4b71Sopenharmony_ci| boolean | 删除成功返回true,否则返回false。 | 429e41f4b71Sopenharmony_ci 430e41f4b71Sopenharmony_ci**错误码:** 431e41f4b71Sopenharmony_ci 432e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 433e41f4b71Sopenharmony_ci 434e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 435e41f4b71Sopenharmony_ci| -------- | -------- | 436e41f4b71Sopenharmony_ci| 10200011 | The remove method cannot be bound. | 437e41f4b71Sopenharmony_ci 438e41f4b71Sopenharmony_ci**示例:** 439e41f4b71Sopenharmony_ci 440e41f4b71Sopenharmony_ci```ts 441e41f4b71Sopenharmony_cilet list: List<number> = new List(); 442e41f4b71Sopenharmony_cilist.add(2); 443e41f4b71Sopenharmony_cilist.add(4); 444e41f4b71Sopenharmony_cilist.add(5); 445e41f4b71Sopenharmony_cilist.add(4); 446e41f4b71Sopenharmony_cilet result = list.remove(2); 447e41f4b71Sopenharmony_ci``` 448e41f4b71Sopenharmony_ci 449e41f4b71Sopenharmony_ci### replaceAllElements 450e41f4b71Sopenharmony_ci 451e41f4b71Sopenharmony_cireplaceAllElements(callbackFn: (value: T, index?: number, list?: List<T>) => T, 452e41f4b71Sopenharmony_cithisArg?: Object): void 453e41f4b71Sopenharmony_ci 454e41f4b71Sopenharmony_ci用户操作List中的元素,用操作后的元素替换原元素并返回操作后的元素。 455e41f4b71Sopenharmony_ci 456e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 457e41f4b71Sopenharmony_ci 458e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 459e41f4b71Sopenharmony_ci 460e41f4b71Sopenharmony_ci**参数:** 461e41f4b71Sopenharmony_ci 462e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 463e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 464e41f4b71Sopenharmony_ci| callbackFn | function | 是 | 回调函数。 | 465e41f4b71Sopenharmony_ci| thisArg | Object | 否 | callbackfn被调用时用作this值,默认值为当前实例对象。 | 466e41f4b71Sopenharmony_ci 467e41f4b71Sopenharmony_cicallbackfn的参数说明: 468e41f4b71Sopenharmony_ci 469e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 470e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 471e41f4b71Sopenharmony_ci| value | T | 是 | 当前遍历到的元素。 | 472e41f4b71Sopenharmony_ci| index | number | 否 | 当前遍历到的下标值,默认值为0。 | 473e41f4b71Sopenharmony_ci| list | List<T> | 否 | 当前调用replaceAllElements方法的实例对象,默认值为当前实例对象。 | 474e41f4b71Sopenharmony_ci 475e41f4b71Sopenharmony_ci**错误码:** 476e41f4b71Sopenharmony_ci 477e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 478e41f4b71Sopenharmony_ci 479e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 480e41f4b71Sopenharmony_ci| -------- | -------- | 481e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 482e41f4b71Sopenharmony_ci| 10200011 | The replaceAllElements method cannot be bound. | 483e41f4b71Sopenharmony_ci 484e41f4b71Sopenharmony_ci**示例:** 485e41f4b71Sopenharmony_ci 486e41f4b71Sopenharmony_ci```ts 487e41f4b71Sopenharmony_cilet list: List<number> = new List(); 488e41f4b71Sopenharmony_cilist.add(2); 489e41f4b71Sopenharmony_cilist.add(4); 490e41f4b71Sopenharmony_cilist.add(5); 491e41f4b71Sopenharmony_cilist.add(4); 492e41f4b71Sopenharmony_cilist.replaceAllElements((value: number) => { 493e41f4b71Sopenharmony_ci // 用户操作逻辑根据实际场景进行添加。 494e41f4b71Sopenharmony_ci return value; 495e41f4b71Sopenharmony_ci}); 496e41f4b71Sopenharmony_ci``` 497e41f4b71Sopenharmony_ci 498e41f4b71Sopenharmony_ci### forEach 499e41f4b71Sopenharmony_ci 500e41f4b71Sopenharmony_ciforEach(callbackFn: (value: T, index?: number, List?: List<T>) => void, 501e41f4b71Sopenharmony_cithisArg?: Object): void 502e41f4b71Sopenharmony_ci 503e41f4b71Sopenharmony_ci通过回调函数来遍历List实例对象上的元素以及元素对应的下标。 504e41f4b71Sopenharmony_ci 505e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 506e41f4b71Sopenharmony_ci 507e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 508e41f4b71Sopenharmony_ci 509e41f4b71Sopenharmony_ci**参数:** 510e41f4b71Sopenharmony_ci 511e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 512e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 513e41f4b71Sopenharmony_ci| callbackFn | function | 是 | 回调函数。 | 514e41f4b71Sopenharmony_ci| thisArg | Object | 否 | callbackfn被调用时用作this值,默认值为当前实例对象。 | 515e41f4b71Sopenharmony_ci 516e41f4b71Sopenharmony_cicallbackfn的参数说明: 517e41f4b71Sopenharmony_ci 518e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 519e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 520e41f4b71Sopenharmony_ci| value | T | 是 | 当前遍历到的元素。 | 521e41f4b71Sopenharmony_ci| index | number | 否 | 当前遍历到的下标值,默认值为0。 | 522e41f4b71Sopenharmony_ci| List | List<T> | 否 | 当前调用forEach方法的实例对象,默认值为当前实例对象。 | 523e41f4b71Sopenharmony_ci 524e41f4b71Sopenharmony_ci**错误码:** 525e41f4b71Sopenharmony_ci 526e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 527e41f4b71Sopenharmony_ci 528e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 529e41f4b71Sopenharmony_ci| -------- | -------- | 530e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 531e41f4b71Sopenharmony_ci| 10200011 | The forEach method cannot be bound. | 532e41f4b71Sopenharmony_ci 533e41f4b71Sopenharmony_ci**示例:** 534e41f4b71Sopenharmony_ci 535e41f4b71Sopenharmony_ci```ts 536e41f4b71Sopenharmony_cilet list: List<number> = new List(); 537e41f4b71Sopenharmony_cilist.add(2); 538e41f4b71Sopenharmony_cilist.add(4); 539e41f4b71Sopenharmony_cilist.add(5); 540e41f4b71Sopenharmony_cilist.add(4); 541e41f4b71Sopenharmony_cilist.forEach((value: number, index?: number) => { 542e41f4b71Sopenharmony_ci console.log("value:" + value, "index:" + index); 543e41f4b71Sopenharmony_ci}); 544e41f4b71Sopenharmony_ci``` 545e41f4b71Sopenharmony_ci 546e41f4b71Sopenharmony_ci### sort 547e41f4b71Sopenharmony_ci 548e41f4b71Sopenharmony_cisort(comparator: (firstValue: T, secondValue: T) => number): void 549e41f4b71Sopenharmony_ci 550e41f4b71Sopenharmony_ci对List中的元素进行一个排序操作。 551e41f4b71Sopenharmony_ci 552e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 553e41f4b71Sopenharmony_ci 554e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 555e41f4b71Sopenharmony_ci 556e41f4b71Sopenharmony_ci**参数:** 557e41f4b71Sopenharmony_ci 558e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 559e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 560e41f4b71Sopenharmony_ci| comparator | function | 是 | 回调函数。 | 561e41f4b71Sopenharmony_ci 562e41f4b71Sopenharmony_cicomparator的参数说明: 563e41f4b71Sopenharmony_ci 564e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 565e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 566e41f4b71Sopenharmony_ci| firstValue | T | 是 | 前一项元素。 | 567e41f4b71Sopenharmony_ci| secondValue | T | 是 | 后一项元素。 | 568e41f4b71Sopenharmony_ci 569e41f4b71Sopenharmony_ci**错误码:** 570e41f4b71Sopenharmony_ci 571e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 572e41f4b71Sopenharmony_ci 573e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 574e41f4b71Sopenharmony_ci| -------- | -------- | 575e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 576e41f4b71Sopenharmony_ci| 10200011 | The sort method cannot be bound. | 577e41f4b71Sopenharmony_ci 578e41f4b71Sopenharmony_ci**示例:** 579e41f4b71Sopenharmony_ci 580e41f4b71Sopenharmony_ci```ts 581e41f4b71Sopenharmony_cilet list: List<number> = new List(); 582e41f4b71Sopenharmony_cilist.add(2); 583e41f4b71Sopenharmony_cilist.add(4); 584e41f4b71Sopenharmony_cilist.add(5); 585e41f4b71Sopenharmony_cilist.add(4); 586e41f4b71Sopenharmony_cilist.sort((a: number, b: number) => a - b); // 结果为升序排列 587e41f4b71Sopenharmony_cilist.sort((a: number, b: number) => b - a); // 结果为降序排列 588e41f4b71Sopenharmony_ci``` 589e41f4b71Sopenharmony_ci 590e41f4b71Sopenharmony_ci### getSubList 591e41f4b71Sopenharmony_ci 592e41f4b71Sopenharmony_cigetSubList(fromIndex: number, toIndex: number): List<T> 593e41f4b71Sopenharmony_ci 594e41f4b71Sopenharmony_ci根据下标截取List中的一段元素,并返回这一段List实例,包括起始值但不包括终止值。 595e41f4b71Sopenharmony_ci 596e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 597e41f4b71Sopenharmony_ci 598e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 599e41f4b71Sopenharmony_ci 600e41f4b71Sopenharmony_ci**参数:** 601e41f4b71Sopenharmony_ci 602e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 603e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 604e41f4b71Sopenharmony_ci| fromIndex | number | 是 | 起始下标。 | 605e41f4b71Sopenharmony_ci| toIndex | number | 是 | 终止下标。 | 606e41f4b71Sopenharmony_ci 607e41f4b71Sopenharmony_ci**返回值:** 608e41f4b71Sopenharmony_ci 609e41f4b71Sopenharmony_ci| 类型 | 说明 | 610e41f4b71Sopenharmony_ci| -------- | -------- | 611e41f4b71Sopenharmony_ci| List<T> | 返回List对象实例。 | 612e41f4b71Sopenharmony_ci 613e41f4b71Sopenharmony_ci**错误码:** 614e41f4b71Sopenharmony_ci 615e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 616e41f4b71Sopenharmony_ci 617e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 618e41f4b71Sopenharmony_ci| -------- | -------- | 619e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 620e41f4b71Sopenharmony_ci| 10200001 | The value of fromIndex or toIndex is out of range. | 621e41f4b71Sopenharmony_ci| 10200011 | The getSubList method cannot be bound. | 622e41f4b71Sopenharmony_ci 623e41f4b71Sopenharmony_ci**示例:** 624e41f4b71Sopenharmony_ci 625e41f4b71Sopenharmony_ci```ts 626e41f4b71Sopenharmony_cilet list: List<number> = new List(); 627e41f4b71Sopenharmony_cilist.add(2); 628e41f4b71Sopenharmony_cilist.add(4); 629e41f4b71Sopenharmony_cilist.add(5); 630e41f4b71Sopenharmony_cilist.add(4); 631e41f4b71Sopenharmony_cilet result = list.getSubList(1, 3); 632e41f4b71Sopenharmony_ci``` 633e41f4b71Sopenharmony_ci 634e41f4b71Sopenharmony_ci### clear 635e41f4b71Sopenharmony_ci 636e41f4b71Sopenharmony_ciclear(): void 637e41f4b71Sopenharmony_ci 638e41f4b71Sopenharmony_ci清除List中的所有元素,并把length置为0。 639e41f4b71Sopenharmony_ci 640e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 641e41f4b71Sopenharmony_ci 642e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 643e41f4b71Sopenharmony_ci 644e41f4b71Sopenharmony_ci**错误码:** 645e41f4b71Sopenharmony_ci 646e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 647e41f4b71Sopenharmony_ci 648e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 649e41f4b71Sopenharmony_ci| -------- | -------- | 650e41f4b71Sopenharmony_ci| 10200011 | The clear method cannot be bound. | 651e41f4b71Sopenharmony_ci 652e41f4b71Sopenharmony_ci**示例:** 653e41f4b71Sopenharmony_ci 654e41f4b71Sopenharmony_ci```ts 655e41f4b71Sopenharmony_cilet list: List<number> = new List(); 656e41f4b71Sopenharmony_cilist.add(2); 657e41f4b71Sopenharmony_cilist.add(4); 658e41f4b71Sopenharmony_cilist.add(5); 659e41f4b71Sopenharmony_cilist.add(4); 660e41f4b71Sopenharmony_cilist.clear(); 661e41f4b71Sopenharmony_ci``` 662e41f4b71Sopenharmony_ci 663e41f4b71Sopenharmony_ci### set 664e41f4b71Sopenharmony_ci 665e41f4b71Sopenharmony_ciset(index: number, element: T): T 666e41f4b71Sopenharmony_ci 667e41f4b71Sopenharmony_ci将此 List 中指定位置的元素替换为指定元素。 668e41f4b71Sopenharmony_ci 669e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 670e41f4b71Sopenharmony_ci 671e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 672e41f4b71Sopenharmony_ci 673e41f4b71Sopenharmony_ci**参数:** 674e41f4b71Sopenharmony_ci 675e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 676e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 677e41f4b71Sopenharmony_ci| index | number | 是 | 查找的下标值。需要小于等于int32_max即2147483647。 | 678e41f4b71Sopenharmony_ci| element | T | 是 | 用来替换的元素。 | 679e41f4b71Sopenharmony_ci 680e41f4b71Sopenharmony_ci**返回值:** 681e41f4b71Sopenharmony_ci 682e41f4b71Sopenharmony_ci| 类型 | 说明 | 683e41f4b71Sopenharmony_ci| -------- | -------- | 684e41f4b71Sopenharmony_ci| T | 返回替换后的元素 | 685e41f4b71Sopenharmony_ci 686e41f4b71Sopenharmony_ci**错误码:** 687e41f4b71Sopenharmony_ci 688e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。 689e41f4b71Sopenharmony_ci 690e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 691e41f4b71Sopenharmony_ci| -------- | -------- | 692e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | 693e41f4b71Sopenharmony_ci| 10200001 | The value of index is out of range. | 694e41f4b71Sopenharmony_ci| 10200011 | The set method cannot be bound. | 695e41f4b71Sopenharmony_ci 696e41f4b71Sopenharmony_ci**示例:** 697e41f4b71Sopenharmony_ci 698e41f4b71Sopenharmony_ci```ts 699e41f4b71Sopenharmony_cilet list: List<number | string> = new List(); 700e41f4b71Sopenharmony_cilist.add(2); 701e41f4b71Sopenharmony_cilist.add(4); 702e41f4b71Sopenharmony_cilist.add(5); 703e41f4b71Sopenharmony_cilist.add(4); 704e41f4b71Sopenharmony_cilet result = list.set(2, "b"); 705e41f4b71Sopenharmony_ci``` 706e41f4b71Sopenharmony_ci 707e41f4b71Sopenharmony_ci### convertToArray 708e41f4b71Sopenharmony_ci 709e41f4b71Sopenharmony_ciconvertToArray(): Array<T> 710e41f4b71Sopenharmony_ci 711e41f4b71Sopenharmony_ci把当前List实例转换成数组,并返回转换后的数组。 712e41f4b71Sopenharmony_ci 713e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 714e41f4b71Sopenharmony_ci 715e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 716e41f4b71Sopenharmony_ci 717e41f4b71Sopenharmony_ci**返回值:** 718e41f4b71Sopenharmony_ci 719e41f4b71Sopenharmony_ci| 类型 | 说明 | 720e41f4b71Sopenharmony_ci| -------- | -------- | 721e41f4b71Sopenharmony_ci| Array<T> | 返回转换后的数组。 | 722e41f4b71Sopenharmony_ci 723e41f4b71Sopenharmony_ci**错误码:** 724e41f4b71Sopenharmony_ci 725e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 726e41f4b71Sopenharmony_ci 727e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 728e41f4b71Sopenharmony_ci| -------- | -------- | 729e41f4b71Sopenharmony_ci| 10200011 | The convertToArray method cannot be bound. | 730e41f4b71Sopenharmony_ci 731e41f4b71Sopenharmony_ci**示例:** 732e41f4b71Sopenharmony_ci 733e41f4b71Sopenharmony_ci```ts 734e41f4b71Sopenharmony_cilet list: List<number> = new List(); 735e41f4b71Sopenharmony_cilist.add(2); 736e41f4b71Sopenharmony_cilist.add(4); 737e41f4b71Sopenharmony_cilist.add(5); 738e41f4b71Sopenharmony_cilist.add(4); 739e41f4b71Sopenharmony_cilet result = list.convertToArray(); 740e41f4b71Sopenharmony_ci``` 741e41f4b71Sopenharmony_ci 742e41f4b71Sopenharmony_ci### isEmpty 743e41f4b71Sopenharmony_ci 744e41f4b71Sopenharmony_ciisEmpty(): boolean 745e41f4b71Sopenharmony_ci 746e41f4b71Sopenharmony_ci判断该List是否为空。 747e41f4b71Sopenharmony_ci 748e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 749e41f4b71Sopenharmony_ci 750e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 751e41f4b71Sopenharmony_ci 752e41f4b71Sopenharmony_ci**返回值:** 753e41f4b71Sopenharmony_ci 754e41f4b71Sopenharmony_ci| 类型 | 说明 | 755e41f4b71Sopenharmony_ci| -------- | -------- | 756e41f4b71Sopenharmony_ci| boolean | 为空返回true,不为空返回false。 | 757e41f4b71Sopenharmony_ci 758e41f4b71Sopenharmony_ci**错误码:** 759e41f4b71Sopenharmony_ci 760e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 761e41f4b71Sopenharmony_ci 762e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 763e41f4b71Sopenharmony_ci| -------- | -------- | 764e41f4b71Sopenharmony_ci| 10200011 | The isEmpty method cannot be bound. | 765e41f4b71Sopenharmony_ci 766e41f4b71Sopenharmony_ci**示例:** 767e41f4b71Sopenharmony_ci 768e41f4b71Sopenharmony_ci```ts 769e41f4b71Sopenharmony_cilet list: List<number> = new List(); 770e41f4b71Sopenharmony_cilist.add(2); 771e41f4b71Sopenharmony_cilist.add(4); 772e41f4b71Sopenharmony_cilist.add(5); 773e41f4b71Sopenharmony_cilist.add(4); 774e41f4b71Sopenharmony_cilet result = list.isEmpty(); 775e41f4b71Sopenharmony_ci``` 776e41f4b71Sopenharmony_ci 777e41f4b71Sopenharmony_ci### getFirst 778e41f4b71Sopenharmony_ci 779e41f4b71Sopenharmony_cigetFirst(): T 780e41f4b71Sopenharmony_ci 781e41f4b71Sopenharmony_ci获取List实例中的第一个元素。 782e41f4b71Sopenharmony_ci 783e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 784e41f4b71Sopenharmony_ci 785e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 786e41f4b71Sopenharmony_ci 787e41f4b71Sopenharmony_ci**返回值:** 788e41f4b71Sopenharmony_ci 789e41f4b71Sopenharmony_ci| 类型 | 说明 | 790e41f4b71Sopenharmony_ci| -------- | -------- | 791e41f4b71Sopenharmony_ci| T | 返回实例的第一个元素。 | 792e41f4b71Sopenharmony_ci 793e41f4b71Sopenharmony_ci**错误码:** 794e41f4b71Sopenharmony_ci 795e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 796e41f4b71Sopenharmony_ci 797e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 798e41f4b71Sopenharmony_ci| -------- | -------- | 799e41f4b71Sopenharmony_ci| 10200011 | The getFirst method cannot be bound. | 800e41f4b71Sopenharmony_ci 801e41f4b71Sopenharmony_ci**示例:** 802e41f4b71Sopenharmony_ci 803e41f4b71Sopenharmony_ci```ts 804e41f4b71Sopenharmony_cilet list: List<number> = new List(); 805e41f4b71Sopenharmony_cilist.add(2); 806e41f4b71Sopenharmony_cilist.add(4); 807e41f4b71Sopenharmony_cilist.add(5); 808e41f4b71Sopenharmony_cilist.add(4); 809e41f4b71Sopenharmony_cilet result = list.getFirst(); 810e41f4b71Sopenharmony_ci``` 811e41f4b71Sopenharmony_ci 812e41f4b71Sopenharmony_ci### getLast 813e41f4b71Sopenharmony_ci 814e41f4b71Sopenharmony_cigetLast(): T 815e41f4b71Sopenharmony_ci 816e41f4b71Sopenharmony_ci获取List实例中的最后一个元素。 817e41f4b71Sopenharmony_ci 818e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 819e41f4b71Sopenharmony_ci 820e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 821e41f4b71Sopenharmony_ci 822e41f4b71Sopenharmony_ci**返回值:** 823e41f4b71Sopenharmony_ci 824e41f4b71Sopenharmony_ci| 类型 | 说明 | 825e41f4b71Sopenharmony_ci| -------- | -------- | 826e41f4b71Sopenharmony_ci| T | 返回实例的最后一个元素。 | 827e41f4b71Sopenharmony_ci 828e41f4b71Sopenharmony_ci**错误码:** 829e41f4b71Sopenharmony_ci 830e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 831e41f4b71Sopenharmony_ci 832e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 833e41f4b71Sopenharmony_ci| -------- | -------- | 834e41f4b71Sopenharmony_ci| 10200011 | The getLast method cannot be bound. | 835e41f4b71Sopenharmony_ci 836e41f4b71Sopenharmony_ci**示例:** 837e41f4b71Sopenharmony_ci 838e41f4b71Sopenharmony_ci```ts 839e41f4b71Sopenharmony_cilet list: List<number> = new List(); 840e41f4b71Sopenharmony_cilist.add(2); 841e41f4b71Sopenharmony_cilist.add(4); 842e41f4b71Sopenharmony_cilist.add(5); 843e41f4b71Sopenharmony_cilist.add(4); 844e41f4b71Sopenharmony_cilet result = list.getLast(); 845e41f4b71Sopenharmony_ci``` 846e41f4b71Sopenharmony_ci 847e41f4b71Sopenharmony_ci### [Symbol.iterator] 848e41f4b71Sopenharmony_ci 849e41f4b71Sopenharmony_ci[Symbol.iterator]\(): IterableIterator<T> 850e41f4b71Sopenharmony_ci 851e41f4b71Sopenharmony_ci返回一个迭代器,迭代器的每一项都是一个 JavaScript 对象,并返回该对象。 852e41f4b71Sopenharmony_ci 853e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 854e41f4b71Sopenharmony_ci 855e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Utils.Lang 856e41f4b71Sopenharmony_ci 857e41f4b71Sopenharmony_ci**返回值:** 858e41f4b71Sopenharmony_ci 859e41f4b71Sopenharmony_ci| 类型 | 说明 | 860e41f4b71Sopenharmony_ci| -------- | -------- | 861e41f4b71Sopenharmony_ci| IterableIterator<T> | 返回一个迭代器。 | 862e41f4b71Sopenharmony_ci 863e41f4b71Sopenharmony_ci**错误码:** 864e41f4b71Sopenharmony_ci 865e41f4b71Sopenharmony_ci以下错误码的详细介绍请参见[语言基础类库错误码](errorcode-utils.md)。 866e41f4b71Sopenharmony_ci 867e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 868e41f4b71Sopenharmony_ci| -------- | -------- | 869e41f4b71Sopenharmony_ci| 10200011 | The Symbol.iterator method cannot be bound. | 870e41f4b71Sopenharmony_ci 871e41f4b71Sopenharmony_ci**示例:** 872e41f4b71Sopenharmony_ci 873e41f4b71Sopenharmony_ci```ts 874e41f4b71Sopenharmony_cilet list: List<number> = new List(); 875e41f4b71Sopenharmony_cilist.add(2); 876e41f4b71Sopenharmony_cilist.add(4); 877e41f4b71Sopenharmony_cilist.add(5); 878e41f4b71Sopenharmony_cilist.add(4); 879e41f4b71Sopenharmony_ci 880e41f4b71Sopenharmony_ci// 使用方法一: 881e41f4b71Sopenharmony_cilet items = Array.from(list) 882e41f4b71Sopenharmony_cifor (let item of items) { 883e41f4b71Sopenharmony_ci console.log("value: " + item); 884e41f4b71Sopenharmony_ci} 885e41f4b71Sopenharmony_ci 886e41f4b71Sopenharmony_ci// 使用方法二: 887e41f4b71Sopenharmony_cilet iter = list[Symbol.iterator](); 888e41f4b71Sopenharmony_cilet temp: IteratorResult<number> = iter.next(); 889e41f4b71Sopenharmony_ciwhile(!temp.done) { 890e41f4b71Sopenharmony_ci console.log("value: " + temp.value); 891e41f4b71Sopenharmony_ci temp = iter.next(); 892e41f4b71Sopenharmony_ci} 893e41f4b71Sopenharmony_ci```