You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于指定条件合并两个字符串数组的最优方法

数组合并实现方案

需求说明

合并两个字符串数组生成最终数组(数组3),需遵循以下规则:

  • 保留数组2中所有不等于hideValue123的元素
  • 数组2中值为hideValue123的元素,替换为数组1对应索引位置的元素
  • 严格保持原有索引顺序

示例数据

数组1

0: "Cloud Infrastructure"
1: "Cloud Infrastructure"
2: "IaaS"
3: "IaaS"
4: "Infrastructure"
5: "Infrastructure"
6: "Compute"
7: "Compute"
8: "Compute"
9: "Compute"

数组2

0: "hideValue123"
1: "hideValue123"
2: "hideValue123"
3: "hideValue123"
4: "hideValue123"
5: "hideValue123"
6: "Networking"
7: "Networking"
8: "Networking"
9: "Networking"

期望结果(数组3)

0: "Cloud Infrastructure"
1: "Cloud Infrastructure"
2: "IaaS"
3: "IaaS"
4: "Infrastructure"
5: "Infrastructure"
6: "Networking"
7: "Networking"
8: "Networking"
9: "Networking"

代码实现

JavaScript 实现

const array1 = ["Cloud Infrastructure", "Cloud Infrastructure", "IaaS", "IaaS", "Infrastructure", "Infrastructure", "Compute", "Compute", "Compute", "Compute"];
const array2 = ["hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "Networking", "Networking", "Networking", "Networking"];
const hideValue = "hideValue123";

const array3 = array2.map((item, index) => item === hideValue ? array1[index] : item);

console.log(array3);

Python 实现

array1 = ["Cloud Infrastructure", "Cloud Infrastructure", "IaaS", "IaaS", "Infrastructure", "Infrastructure", "Compute", "Compute", "Compute", "Compute"]
array2 = ["hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "Networking", "Networking", "Networking", "Networking"]
hide_value = "hideValue123"

array3 = [array1[i] if item == hide_value else item for i, item in enumerate(array2)]

print(array3)

Java 实现

import java.util.ArrayList;
import java.util.List;

public class ArrayMerge {
    public static void main(String[] args) {
        String[] array1 = {"Cloud Infrastructure", "Cloud Infrastructure", "IaaS", "IaaS", "Infrastructure", "Infrastructure", "Compute", "Compute", "Compute", "Compute"};
        String[] array2 = {"hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "hideValue123", "Networking", "Networking", "Networking", "Networking"};
        String hideValue = "hideValue123";
        
        List<String> array3 = new ArrayList<>();
        for (int i = 0; i < array2.length; i++) {
            array3.add(array2[i].equals(hideValue) ? array1[i] : array2[i]);
        }
        
        // 打印结果
        for (int i = 0; i < array3.size(); i++) {
            System.out.println(i + ": \"" + array3.get(i) + "\"");
        }
    }
}

内容的提问来源于stack exchange,提问作者gjonte

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 11:54:19