Use Multiple For Loops to Process a <List<List<sObject>>

DEX450 - Introductions and Overview

📄 第 485 页 🎬 视频课程

课程章节介绍

同学们,今天我们来聊聊如何在Salesforce中使用多个For循环来处理一个包含多个列表的列表,也就是`List>`。听起来有点复杂,但其实很简单,我们一步步来。 首先,想象一下你有一个大盒子,这个大盒子里装了很多小盒子,每个小盒子里又装了一些小球。在Salesforce中,这个大盒子就是`List>`,小盒子是`List`,小球就是`sObject`,也就是我们的数据记录。 现在,假设我们有两个小盒子,分别叫`acmes[0]`和`acmes[1]`。`acmes[0]`是第一个小盒子,里面装了一些小球;`acmes[1]`是第二个小盒子,里面也装了一些小球。我们的任务是逐个查看这些小盒子里的每个小球。 我们可以用两个For循环来完成这个任务。第一个For循环用来遍历大盒子里的每个小盒子,第二个For循环用来遍历小盒子里的每个小球。 让我们来看一下代码: ```apex List> acmes = new List>(); // 假设我们已经给acmes添加了一些数据 for (List smallBox : acmes) { for (sObject ball : smallBox) { System.debug('小球的信息: ' + ball); } } ``` 在这个代码中,第一个For循环`for (List smallBox : acmes)`会逐个取出大盒子`acmes`里的小盒子`smallBox`。然后,第二个For循环`for (sObject ball : smallBox)`会逐个取出小盒子`smallBox`里的小球`ball`,并打印出小球的信息。 你可以把这个代码复制到Salesforce的开发人员控制台的执行匿名窗口中运行。运行后,记得在日志中过滤只显示调试信息,这样你就能看到每个小球的信息被打印出来了。 通过这种方式,我们可以轻松地处理嵌套的列表结构,确保每个数据记录都被正确处理。希望这个解释对你有帮助,如果有任何问题,随时问我!