title: How to merge/join two List of Map by specific key of Map?
body: <p>how i can merge two List&lt;Map&lt;String, dynamic&gt;&gt; by a specific key?
  Like, i got two List&lt;Map&lt;String, dynamic&gt;&gt;, where all keys except 'id' are different and i want to join them based on the key 'id'.</p>
  <p><strong>For example:</strong></p>
  <p>List&lt;Map&lt;String, dynamic&gt;&gt; Wallet and List&lt;Map&lt;String, dynamic&gt;&gt; Currencies <strong>before the operation</strong></p>
  <pre><code>List&lt;Map&lt;String, dynamic&gt;&gt; Wallet = [
    {
      &quot;id&quot;: 1,
      &quot;value&quot;: 153030
    },
    {
      &quot;id&quot;: 2,
      &quot;value&quot;: 817831
    },
    {
      &quot;id&quot;: 3,
      &quot;value&quot;: 25
    },
    {
      &quot;id&quot;: 4,
      &quot;value&quot;: 660
    },
    {
      &quot;id&quot;: 5,
      &quot;value&quot;: 132
    },
    {
      &quot;id&quot;: 7,
      &quot;value&quot;: 145
    }
  ];
  
  List&lt;Map&lt;String, dynamic&gt;&gt; Currencies = [
    {
      &quot;id&quot;: 1,
      &quot;name&quot;: &quot;coin&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 101,
      &quot;icon&quot;: &quot;https://icon1.png&quot;
    },
    {
      &quot;id&quot;: 2,
      &quot;name&quot;: &quot;karma&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 102,
      &quot;icon&quot;: &quot;https://icon2.png&quot;
    },
    {
      &quot;id&quot;: 3,
      &quot;name&quot;: &quot;laurel&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 104,
      &quot;icon&quot;: &quot;https://icon3.png&quot;
    },
    {
      &quot;id&quot;: 4,
      &quot;name&quot;: &quot;diamonds&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 100,
      &quot;icon&quot;: &quot;https://icon4.png&quot;
    },
    {
      &quot;id&quot;: 5,
      &quot;name&quot;: &quot;tears&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 402,
      &quot;icon&quot;: &quot;https://icon5.png&quot;
    },
    {
      &quot;id&quot;: 6,
      &quot;name&quot;: &quot;shard&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 409,
      &quot;icon&quot;: &quot;https://icon6.png&quot;
    },
    {
      &quot;id&quot;: 7,
      &quot;name&quot;: &quot;relict&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 400,
      &quot;icon&quot;: &quot;https://icon7.png&quot;
    },
    {
      &quot;id&quot;: 9,
      &quot;name&quot;: &quot;seal&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 403,
      &quot;icon&quot;: &quot;https://icon9.png&quot;
    },
    {
      &quot;id&quot;: 10,
      &quot;name&quot;: &quot;silver&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 405,
      &quot;icon&quot;: &quot;https://icon10.png&quot;
    }
  ];
  </code></pre>
  <p>The merged list <strong>after the operation i am looking for</strong></p>
  <pre><code>List&lt;Map&lt;String, dynamic&gt;&gt; ExtendedWallet = [
    {
      &quot;id&quot;: 1,
      &quot;value&quot;: 153030,
      &quot;name&quot;: &quot;coin&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 101,
      &quot;icon&quot;: &quot;https://icon1.png&quot;
    },
    {
      &quot;id&quot;: 2,
      &quot;value&quot;: 817831,
      &quot;name&quot;: &quot;karma&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 102,
      &quot;icon&quot;: &quot;https://icon2.png&quot;
    },
    {
      &quot;id&quot;: 3,
      &quot;value&quot;: 25,
      &quot;name&quot;: &quot;laurel&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 104,
      &quot;icon&quot;: &quot;https://icon3.png&quot;
    },
    {
      &quot;id&quot;: 4,
      &quot;value&quot;: 660,
      &quot;name&quot;: &quot;diamonds&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 100,
      &quot;icon&quot;: &quot;https://icon4.png&quot;
    },
    {
      &quot;id&quot;: 5,
      &quot;value&quot;: 132,
      &quot;name&quot;: &quot;tears&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 402,
      &quot;icon&quot;: &quot;https://icon5.png&quot;
    },
    {
      &quot;id&quot;: 7,
      &quot;value&quot;: 145,
      &quot;name&quot;: &quot;relict&quot;,
      &quot;desc&quot;: &quot;Dummytext.&quot;,
      &quot;order&quot;: 400,
      &quot;icon&quot;: &quot;https://icon7.png&quot;
    }
  ];
  </code></pre>
  <p>Note that those maps from Currencies with an 'id' that is <strong>not</strong> in Wallet, will not be used, respectively will be skipped.</p>
  <p>Hope you guys get my points and can help me figure this out!</p>