# 数组操作工具

对两个数组执行集合操作（交集、并集、差集等）

> 标准页面: https://elysiatools.com/zh/tools/array-operations

- **分类:** Data Processing

- **关键词:** 数组, 集合, 交集, 并集, 差集, 合并, 比较, 组合

## 概述

数组操作工具是一款高效的数据处理助手，旨在帮助用户快速对两个数组执行集合运算，包括交集、并集、差集、对称差集及笛卡尔积等，支持多种输入格式，让数据比对与合并变得简单直观。

## 输入项

- **第一个数组** (textarea): 输入JSON格式数组：\[3, 1, 2\] 或逗号分隔值：3, 1, 2 或每行一个
- **第二个数组** (textarea): 输入JSON格式数组：\[3, 1, 2\] 或逗号分隔值：3, 1, 2 或每行一个
- **操作类型** (select)
- **区分大小写（针对字符串）** (checkbox)
- **去除空白字符（针对字符串）** (checkbox)
- **自定义分隔符（文本输入）** (text): 输入分隔符（默认：逗号、分号或换行）

## 适用场景

- 需要快速找出两组数据中共同存在的元素（交集）时。
- 需要合并两组数据并去除重复项（并集）时。
- 需要对比两份名单并提取差异部分（差集）时。
- 需要验证一组数据是否完全包含于另一组数据（子集/超集）时。

## 工作原理

- 在输入框中分别填入第一个和第二个数组，支持 JSON 格式、逗号分隔或换行输入。
- 在操作类型下拉菜单中选择所需的集合运算，如交集、并集或差集。
- 根据需要勾选“区分大小写”或“去除空白字符”以优化匹配结果。
- 点击执行按钮，工具将立即计算并输出处理后的结果。

## 使用案例

- 电商运营：对比两份客户名单，找出同时在两个活动中下单的重复用户。
- 开发调试：合并两个配置列表，并自动剔除重复的参数项。
- 数据分析：从两份产品库存清单中提取出仅在其中一份中存在的差异项。

## 常见问题

### 该工具支持哪些输入格式？

支持 JSON 格式数组（如 [1, 2, 3]）、逗号分隔的文本以及每行一个元素的列表格式。

### 如何处理字符串中的空格？

勾选“去除空白字符”选项，工具会自动清理每个元素前后的空格，确保比对准确。

### 什么是对称差集？

对称差集是指属于 A 或 B 但不同时属于两者的元素集合，即 (A ∪ B) - (A ∩ B)。

### 工具区分大小写吗？

默认区分大小写。如果需要忽略大小写差异，请取消勾选“区分大小写”选项。

### 可以处理非数字类型的数据吗？

可以，工具同样支持字符串、字符等多种数据类型的集合运算。

## 相关工具

- [数组交集](https://elysiatools.com/zh/tools/intersection-arrays): 使用 lodash _.intersection 查找多个数组的共同值
- [JSON文件合并工具](https://elysiatools.com/zh/tools/json-merger): 将多个JSON文件合并成一个文件，支持多种合并策略（深度合并、覆盖合并等）
- [YAML文件合并工具](https://elysiatools.com/zh/tools/yaml-merger): 将多个YAML文件合并成一个文件，支持多种合并策略（深度合并、覆盖合并等）
- [数组拼接](https://elysiatools.com/zh/tools/concat-arrays): 使用 lodash _.concat 拼接多个数组
- [文本对比](https://elysiatools.com/zh/tools/text-diff): 比较两个文本输入并显示差异
- [Markdown文件合并工具](https://elysiatools.com/zh/tools/markdown-merger): 合并多个Markdown文件，智能调整标题层级并生成目录
- [文本文件合并工具](https://elysiatools.com/zh/tools/txt-merger): 合并多个文本文件，支持多种合并策略（连接、交错、智能合并等）
- [数组差集](https://elysiatools.com/zh/tools/difference-arrays): 使用 lodash _.difference 从数组中删除存在于其他数组中的值

## 示例

- [Android Java 文件操作示例](https://elysiatools.com/zh/samples/android-file-operations-java): Android Java 文件操作示例，包括文本文件读写、文件复制移动、目录遍历和文件验证
- [Android Kotlin 文件操作示例](https://elysiatools.com/zh/samples/android-file-operations-kotlin): Android Kotlin 文件操作示例，包括文本文件读写、文件复制移动、目录遍历和文件验证
- [macOS Objective-C 文件操作示例](https://elysiatools.com/zh/samples/macos-file-operations-objectivec): macOS Objective-C 文件操作示例，包括文本文件读写、文件复制移动、目录遍历和文件验证
- [macOS Swift 文件操作示例](https://elysiatools.com/zh/samples/macos-file-operations-swift): macOS Swift 文件操作示例，包括文本文件读写、文件复制移动、目录遍历和文件验证

## 相关内容

- [数组与列表数据整理工具](https://elysiatools.com/zh/hubs/array-and-list-manipulation-tools): 分析、清理、过滤、去重、重塑、切片并排序数组或列表，方便后续使用数据。
