带有方括号中的select / from的Foreach?

我最近正在查看包装类并搜索了以下页面... http://wiki.developerforce.com/page/Wrapper_Class

虽然我理解包装类,但我对以下内容感到困惑......

public List<cContact> getContacts() {

    if(contactList == null) {

        contactList = new List<cContact>();

        for(Contact c: [select Id, Name, Email, Phone from Contact limit 10]) {

            // As each contact is processed we create a new cContact object and add it to the contactList
            contactList.add(new cContact(c));
        }
    }
    return contactList;
}

特别是......

for(Contact c: [select Id, Name, Email, Phone from Contact limit 10]) { ... }

这是从什么选择? 我可以在哪里查看有关这方面的更多信息?

我知道关于LINQ和select,from,where等......但我从来没有见过_this_语法。 它是什么以及我如何研究这个语法的更多内容?


我不喜欢留下未回答的问题...

对于提出的特定问题... http://www.salesforce.com/us/developer/docs/apexcode/Content/langCon_apex_loops_for_SOQL.htm

对于Salesforce对象查询语言(SOQL),一般来说 - 方括号中的选择/来源为... http://www.salesforce.com/us/developer/docs/soql_sosl/salesforce_soql_sosl.pdf

对于一般的APEX语言,因为这是恰恰看起来非常C#-ish的语言(提出的问题的更多示例)... http://wiki.developerforce.com/page/Apex_Code:_The_World's_First_On-Demand_Programming_Language


还有这个秘籍,显示更多关于这种类型的语法,以及其他使用APEX的方法。 看看这里

For循环...“定义了一个循环,循环的三种类型是:使用变量的迭代,对列表的迭代以及对查询的迭代。

例:

String s = 'Acme'; 
for (Account a : [SELECT Id, Name, FROM account WHERE Name LIKE :(s+'%')]) 
{
    // Your code
}

该语法适用于上面提到的SOQL,它与C#自己的LINQ语法布局略有不同,尽管它们非常相似!

链接地址: http://www.djcxy.com/p/15429.html

上一篇: Foreach with a select/from in square brackets?

下一篇: gperftools cpu profiler does not support multi process?