式について
式は、変数、演算子、単一の値を評価するメソッドの呼び出しからなる構成体です。Apex では、式は必ず次のいずれかの型になります。
- リテラル式。次に例を示します。
11 + 1 - 新しい sObject、Apex オブジェクト、リスト、セットまたは対応付け。次に例を示します。
1new Account(<field_initializers>) 2new Integer[<n>] 3new Account[]{<elements>} 4new List<Account>() 5new Set<String>{} 6new Map<String, Integer>() 7new myRenamingClass(string oldName, string newName) - 代入演算子の左側で機能する値 (L 値)。変数、一次元リストの位置、sObject または Apex オブジェクト項目参照のほとんど、などです。次に例を示します。
1Integer i 2myList[3] 3myContact.name 4myRenamingClass.oldName - L 値ではない sObject 項目参照。次のようなものがあります。
- リスト内の sObject の ID (「Lists」を参照)
- sObject に関連付けられた子レコードのセット (特定の取引先に関連付けられた取引先責任者のセットなど)。この型の式は、SOQL クエリおよび SOSL クエリとよく似たクエリ結果を返します。
- 角括弧で囲まれた SOQL クエリまたは SOSL クエリ。Apex でその場で評価できます。次に例を示します。
1Account[] aa = [SELECT Id, Name FROM Account WHERE Name ='Acme']; 2Integer i = [SELECT COUNT() FROM Contact WHERE LastName ='Weissman']; 3List<List<SObject>> searchList = [FIND 'map*' IN ALL FIELDS RETURNING Account (Id, Name), Contact, Opportunity, Lead];詳細は、「SOQL および SOSL クエリ」を参照してください。
- 静的メソッドまたはインスタンスメソッドの呼び出し。次に例を示します。
1System.assert(true) 2myRenamingClass.replaceNames() 3changePoint(new Point(x, y));