首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Apex中两种不同的无双环sObjects列表的比较

Apex中两种不同的无双环sObjects列表的比较
EN

Stack Overflow用户
提问于 2020-01-04 20:36:28
回答 1查看 3K关注 0票数 1

我需要检查自定义对象的列表(例如),以便在另一个自定义对象列表(模板)中找到匹配项。匹配是字段包含相同值的地方,或者是模板上的值为null。现有代码有一个双循环,如下所示:

代码语言:javascript
运行
复制
for(instance theInstance : theInstanceList){
    for(template thTemplate: theTemplateList){
        if((theInstanve.field1 = theTemplate.field1 || theTemplate.field1 == null) &&{
           (theInstanve.field2 = theTemplate.field2 || theTemplate.field2 == null) &&{
            and so on for 8-10 fields ....{
           ){
                Carry out requirements ........{
           }
     }
}

当有很多记录的时候,效率很低。有更好的解决办法吗?

EN

回答 1

Stack Overflow用户

发布于 2020-01-04 23:04:36

以下是我将尝试的部分解决方案(根据您的需求可能很脆弱):

  1. 通过theInstanceList将theTemplateList转换为JSON
  2. 循环

a.将每个实例转换为JSON

b.检查JSON模板列表“是否包含”(string方法) JSON实例

这样,您将只循环一次,在一次比较中,对所有10个字段进行检查。

以下是您可能需要处理的假设:

来自实例和模板的

  • 字段具有相同的名称--
  • 字段在JSON字符串
  • 中的顺序相同,如果字段为null,则在JSON字符串
  • 中不会出现该字段,您需要匹配所有10个字段(

H 115),如果实例字段被填充,相应的模板不匹配,则比较将失败H 216F 217

如果由于上述任何原因,JSON无法工作,则仍然可以创建一个连接字段值的公式字段,并使用公式字段而不是JSON来执行“包含”操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59594623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档