【发布时间】:2018-02-04 16:19:37
【问题描述】:
我有一个 sObject 元素列表。我想删除与原始记录具有相同记录名称的重复元素。
假设如果我有一个记录名称为的元素列表 椅子1,椅子2,椅子3,椅子4,椅子5,椅子6,椅子7,椅子1,椅子2
我想打印一个列表,其中只有没有重复的元素。对于这种情况,我应该得到列表 Chair3,Chair4,Chair5,Chair6,Chair7。
我正在使用以下代码来实现此功能。但我得到的记录为:Chair1,Chair2,Chair3,Chair4,Chair5,Chair6,Chair7。
在理想情况下,我们不应该得到 Chair1,Chair2 的记录,因为它们已经有重复的记录。
List <Chair__c> chairList = [SELECT
ID,
Name
FROM Chair__c
ORDER BY Name ASC];
System.debug('chairListOrderbyName::'+chairList);
List <String> chairNameList = new List <String>();
for(Integer i = 0; i < chairList.size();i++) {
for(Integer j = 0;j < chairList.size();j++) {
if(chairList[i].Name.equalsIgnoreCase(chairList[j].Name) && i != j) {
chairList.remove(i);
chairList.remove(j);
}
}
}
System.debug('chairList::'+chairList);
【问题讨论】:
标签: list collections salesforce apex