• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Interface (ConcatArray)
2<!--Kit: ArkTS-->
3<!--Subsystem: CommonLibrary-->
4<!--Owner: @lijiamin2025-->
5<!--Designer: @weng-changcheng-->
6<!--Tester: @kirl75; @zsw_zhushiwei-->
7<!--Adviser: @ge-yafang-->
8> **说明:**
9>
10> 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
11>
12> 此模块仅支持在ArkTS文件(文件后缀为.ets)中导入使用。
13
14表示可以进行连接的类似数组的对象。该接口扩展了`ISendable`接口。
15
16文档中存在泛型的使用,涉及以下泛型标记符:
17
18- T:Type,支持[Sendable支持的数据类型](../../arkts-utils/arkts-sendable.md#sendable支持的数据类型)。
19
20## 导入模块
21
22```ts
23import { collections } from '@kit.ArkTS';
24```
25
26## 属性
27
28**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
29
30**系统能力:** SystemCapability.Utils.Lang
31
32| 名称   | 类型   | 只读 | 可选 | 说明              |
33| ------ | ------ | ---- | ---- | ----------------- |
34| length | number | 是   | 否   | ConcatArray的元素个数。 |
35
36## [index: number]
37
38readonly &#91;index: number&#93;: T
39
40返回ConcatArray指定索引位置的元素,不支持修改指定索引位置的元素。
41
42**系统能力:** SystemCapability.Utils.Lang
43
44**参数:**
45
46| 参数名    | 类型   | 必填 | 说明                       |
47| ----- | ------ | ---- | ---------------------------- |
48| index | number | 是   | 所需代码单元的从零开始的索引。  |
49
50**返回值:**
51
52| 类型   | 说明                     |
53| ----- | ------------------------ |
54| T | ConcatArray给定的元素数据类型。|
55
56**错误码**:
57
58以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)和[语言基础类库错误码](errorcode-utils.md)。
59
60| 错误码ID | 错误信息                             |
61| ------- | ------------------------------------ |
62| 401 |  Parameter error. Illegal index.         |
63| 10200001 | The value of index is out of range. |
64
65**示例:**
66
67```ts
68let concatArray : collections.ConcatArray<number> = new collections.Array<number>(1, 2, 4);
69console.info("Element at index 1: ", concatArray[1]);
70```
71
72## join
73
74join(separator?: string): string
75
76将ConcatArray的所有元素连接成一个字符串,元素之间可以用指定的分隔符分隔。
77
78**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
79
80**系统能力:** SystemCapability.Utils.Lang
81
82**参数:**
83
84| 参数名    | 类型   | 必填 | 说明                                                 |
85| --------- | ------ | ---- | ---------------------------------------------------- |
86| separator | string | 否   | 用于分隔ConcatArray元素的字符串。如果省略,则使用逗号分隔。 |
87
88**返回值:**
89
90| 类型   | 说明                                                         |
91| ------ | ------------------------------------------------------------ |
92| string | 包含所有ConcatArray元素连接成的字符串。如果ConcatArray为空,则返回空字符串。 |
93
94**错误码**:
95
96以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
97
98| 错误码ID | 错误信息 |
99| ------- | -------- |
100| 401 |  Parameter error. Invalid separator. |
101
102**示例:**
103
104```ts
105let concatArray : collections.ConcatArray<string> = new collections.Array<string>('a', 'b', 'c');
106let joinedString = concatArray.join('-'); // 返回 "a-b-c"
107```
108
109## slice
110
111slice(start?: number, end?: number): ConcatArray\<T>
112
113返回一个新的ConcatArray,该ConcatArray是原始ConcatArray的切片。
114
115**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
116
117**系统能力:** SystemCapability.Utils.Lang
118
119**参数:**
120| 参数名 | 类型   | 必填 | 说明                                                         |
121| ------ | ------ | ---- | ------------------------------------------------------------ |
122| start  | number | 否   | 开始索引。如果`start < 0`,则会从`start + array.length`位置开始。默认值为0。   |
123| end    | number | 否   | 结束索引(不包括该元素)。如果`end < 0`,则会到`end + array.length`位置结束。默认为ArkTS Array的长度。 |
124
125**返回值:**
126
127| 类型      | 说明                       |
128| --------- | -------------------------- |
129| ConcatArray\<T> | 包含原始ConcatArray切片的新ConcatArray。 |
130
131**错误码**:
132
133以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
134
135| 错误码ID | 错误信息 |
136| ------- | -------- |
137| 401 |  Parameter error. Invalid \`start\` or \`end\` parameters. |
138
139**示例:**
140
141```ts
142let concatArray : collections.ConcatArray<number> = new collections.Array<number>(1, 2, 3, 4, 5);
143let slicedArray = concatArray.slice(1, 3); // 返回[2, 3],原Array保持不变
144```
145