Salesforce Apex Map ist eine Datenstruktur, die hauptsächlich in Triggerszenarien verwendet wird und dabei hilft, mehr Daten gleichzeitig in die Salesforce -Datenbank wie eine Liste zu laden. Aber es speichert und organisiert die Daten im Format Schlüssel: Wert. Wir werden die Kartensammlung in der Apex -Programmiersprache und ihren Methoden diskutieren. Hier verwenden wir das Konto -Standardobjekt in Salesforce für alle Beispiele. Lassen Sie uns schnell in dieses Tutorial eintauchen.
Karte
MAP nimmt die Daten Schlüssel: Wert Paardaten als Eingabe und speichert sie in den Salesforce -Standard- oder benutzerdefinierten Objekten. Es kann das Schluchzen als Schlüssel oder Wert annehmen.
Kartenerstellung
Durch Angeben der Datentypen des Schlüssels und des Wertes zusammen mit dem Objektnamen kann die Karte erstellt werden. Hier wird ein neues Keyword verwendet, um es zu erstellen. Es kann optional sein, die Elemente während der Erstellung zu bestehen.
Leere Kartensyntax:
MAP MAP_OBJ = NEW MAP ():Generische Syntax:
MAP MAP_OBJ = NEUE MAPSobject Syntax:
MAP MAP_OBJ = NEUE MAPHier kann das Schluchzen ein Standard- oder benutzerdefiniertes Objekt sein. In diesem gesamten Artikel werden wir uns nur mit der Karte mit dem SOBJECT "Account" befassen.
Sehen wir uns die Methoden an, die von der Apex "Map" -Kollektion nacheinander unterstützt werden.
Umgebungsaufbau
1. Melden Sie sich schnell bei Salesforce an und öffnen Sie die „Entwicklerkonsole“, indem Sie auf das Zahnradsymbol klicken.
2. Öffnen Sie dann das "Anonymous -Fenster", indem Sie auf "Debug" klicken und "Öffnen Sie anonymes Fenster aus.".
Generisches Beispiel:
Zunächst werden wir die generische Kartenerstellung sehen, indem wir eine Karte mit zwei Fächern erstellen: die „Subjekt_ID“, die als Schlüssel und „Wert“ als Betreff Name fungiert.
Map programmierung = new map 1 => 'linux', 2 => 'python';Ausgang:
Kartenmethoden
Zunächst erstellen wir eine Karte aus dem Objekt "Konto". Wir erstellen drei Konten mit Namen nacheinander. Dann deklarieren wir eine Karte mit dem Schlüssel und dem Wert als Wert Geben Sie die vorherigen drei Konten an die Karte ein und übergeben Sie einige Werte.
// 3 Konten mit Namen erstellenAusgang:
Sie können sehen, dass "map_obj" drei Konten speichert.
Karte.Werte()
Um nur die Werte aus der angegebenen Karte zurückzugeben, können wir die Methode Values () verwenden. Es werden keine Parameter benötigt. Es gibt einfach die Liste der von Comma getrennten Werte zurück.
Syntax:
map_object.Werte()Beispiel:
Lassen Sie uns alle Werte aus der vorherigen Karte zurückgeben. Stellen Sie sicher, dass Sie den vorherigen Beispielcode ausführen müssen (erstellen Sie eine Karte mit drei Konten). Andernfalls erhalten Sie einen Fehler. Der Code sollte auch in der Konsole existieren.
// Werte für alle Tasten mithilfe von Werten () zurückgeben ()Ausgang:
Es gibt nur drei Schlüssel: Wertpaare im MAP_OBJ. Die Werte sind: 1000, 2000 und 3000.
Karte.Schlüsselsatz()
Geben Sie die Schlüssel zurück, die im Kartenobjekt vorhanden sind. Ähnlich wie Werte () muss kein Parameter an diese Methode übergeben werden.
Syntax:
map_object.Schlüsselsatz()Beispiel:
Lassen Sie uns alle Schlüssel aus der vorherigen Karte zurückgeben. Stellen Sie sicher, dass Sie den vorherigen Beispielcode ausführen (erstellen Sie eine Karte mit drei Konten). Andernfalls erhalten Sie einen Fehler. Der Code sollte auch in der Konsole existieren.
// Geben Sie alle Tasten mit Keyset () zurück) zurückAusgang:
Es gibt nur drei Schlüssel: Wertpaare im MAP_OBJ. Die Tasten sind: Konto: name = Linux Hint, Konto: name = python und Konto: name = salesforce.
Karte.Größe()
In einigen Szenarien müssen wir die gesamten Elemente (Schlüssel: Wert) kennen, die in der Apex -Karte vorhanden sind. Size () ist die Methode, die die Gesamtpaare (Schlüssel: Wert) zurückgibt, die im MAP_OBJECT vorhanden sind. Für diese Methode sind keine Parameter erforderlich.
Syntax:
map_object.Größe()Beispiel:
Geben Sie die Größe des vorherigen Kartenobjekts zurück.
// Die Gesamtzahl der Paare mit size () zurückgebenAusgang:
Da es nur 3 Paare gibt, beträgt die zurückgegebene Größe () 3.
Karte.erhalten()
Zugriff auf die Werte über die Karte mit dem Schlüssel erfolgt mit der Methode GET (). Dazu müssen wir den Schlüssel als Parameter an die Get () -Methode übergeben. Wenn ein unbekannter Schlüssel übergeben wird, gibt er einen Fehler zurück.
Syntax:
map_object.Holen Sie sich (Schlüssel)Beispiel:
Geben Sie die Werte von Key-2 und Key-1 getrennt zurück.
// Erhalten Sie den Wert des zweiten SchlüsselsAusgang:
Hier ist 2000 der Wert des Schlüsselschlüssels „Salesforce“ und 1000 der Wert des Schlüsselschlüssels „Linux Tipp“ ist.
Karte.klar()
Alle Paare in einer Apex -Kartensammlung können gleichzeitig mit der Methode clear () gelöscht werden. Es werden keine Parameter benötigt.
Syntax:
map_object.klar()Beispiel:
Entfernen Sie die Paare im vorherigen "MAP_OBJ".
// vor clear ()Ausgang:
Zuvor gibt es 3 Schlüsselwertepaare im „MAP_OBJ“. Nach der Anwendung der Clear () -Methode werden alle 3 gelöscht.
Karte.gleich ()
Wir können zwei Kartenobjekte mit der Equals () -Methode vergleichen. Der boolesche Wert von True wird zurückgegeben, wenn alle Schlüssel und Werte in beiden Kartenobjekten gleich sind. Während der Boolesche Wert von False zurückgegeben wird, wenn mindestens ein Wert unterschiedlich ist.
Syntax:
map_object1.Equals (MAP_OBJECT2)Beispiel:
Erstellen wir drei Kartenobjekte mit einem Schlüssel: Wertpaar, jeweils in Bezug auf das Objekt "Konto". Vergleichen Sie diese Objekte unter ihnen.
// Account-1Ausgang:
Die ersten und zweiten Kartenobjekte sind gleich, da sowohl Schlüssel als auch Werte in beiden Objekten gleich sind. Die ersten und dritten Kartenobjekte sind nicht gleich, da die Schlüssel und Werte unterschiedlich sind.
Karte.ist leer()
Wir können überprüfen, ob die Karte leer ist oder nicht die IsEmpty () -Methode verwendet. True wird zurückgegeben, wenn die Apex -Kartensammlung leer ist. Ansonsten wird falsch zurückgegeben. Ähnlich wie bei der Methode Size () wird kein Parameter erforderlich.
Syntax:
map_object.ist leer()Beispiel:
Erstellen wir zwei Kartenobjekte, die sich auf „Konto“ beziehen, und überprüfen Sie, ob diese beiden leer sind oder nicht.
// Account-1Ausgang:
Die erste Karte ist nicht leer, da sie ein Schlüsselwertpaar enthält. Die zweite Karte ist leer, da sie keine enthält.
Karte.entfernen()
Mit der Methode von REME () in der Apex-Kartensammlung werden ein bestimmtes Schlüsselwertpaar basierend auf dem Schlüssel entfernen, der darin als Parameter angegeben ist. Wenn der Schlüssel nicht vorhanden ist, wird ein Fehler angesprochen.
Syntax:
map_object.entfernen (Schlüssel)Beispiel:
Erstellen wir eine Karte mit zwei Elementen und entfernen Sie das erste Element.
Account Account1 = neues Konto (name = 'Linux Hint');Ausgang:
Nach dem Entfernen des ersten Elements aus der Karte existiert nur ein Element - Konto: name = python = 4000.
Karte.setzen()
Mit dieser Methode können wir gleichzeitig ein Element zum Kartenobjekt hinzufügen. Es akzeptiert zwei Parameter: „Schlüssel“ ist der erste Parameter, während „Wert“ der zweite Parameter ist.
Syntax:
map_object.put (Schlüssel, Wert)Beispiel:
Erstellen wir eine Karte mit einem Schlüsselwertpaar. Anschließend verwenden wir die "Put" -Methode, um "Account2" einzufügen.
// Account-1Ausgang:
Zuvor gibt es in der Karte nur ein Schlüsselwertpaar, nämlich Konto: name = linux tipp = 1000. Nach dem Hinzufügen von "Account2" enthält die endgültige Karte zwei Schlüsselwertpaare, nämlich Konto: name = Linux Hint = 1000 und Account: name = python = 2000.
Karte.putall ()
Mit dieser Methode können wir dem Kartenobjekt gleich eine einzelne oder mehrere Elemente gleichzeitig hinzufügen. Es dauert ein Kartensammlungsobjekt als Parameter.
Syntax:
map_object1.putall (MAP_OBJECT2)Beispiel:
Erstellen wir eine Karte mit zwei Schlüsselwertpaaren und erstellen Sie erneut ein leeres Kartenobjekt ohne Elemente. Verwenden Sie die Methode PUTALL (), um die Elemente hinzuzufügen, die im ersten Kartenobjekt zum zweiten Kartenobjekt verfügbar sind.
Account Account1 = neues Konto (name = 'Linux Hint');Ausgang:
Abschluss
MAP ist eine Datenstruktur, die hauptsächlich in Triggerszenarien verwendet wird und hilft, mehr Daten gleichzeitig in die Salesforce -Datenbank wie eine Liste zu laden. Wir haben zwei Optionen, um die Elemente in die Karte hinzuzufügen: Verwenden Sie Put () und putall (). Mit der Methode von REME () werden ein bestimmtes Element aus der Apex -Kartensammlung entfernen. Die Methode Clear () wird verwendet, um alle Elemente zu löschen. Außerdem haben wir gelernt, wie man die Werte und Schlüssel mit den Methoden Values () und Keyset () zurückgibt.