<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Kelly Cruz</title>
    <description>The latest articles on DEV Community by Kelly Cruz (@kellypc).</description>
    <link>https://dev.to/kellypc</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1065191%2F56071749-3221-4f52-9f8f-3d51506fb277.JPG</url>
      <title>DEV Community: Kelly Cruz</title>
      <link>https://dev.to/kellypc</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kellypc"/>
    <language>en</language>
    <item>
      <title>Ruby - Conhecendo o método zip</title>
      <dc:creator>Kelly Cruz</dc:creator>
      <pubDate>Mon, 05 Jun 2023 21:45:21 +0000</pubDate>
      <link>https://dev.to/kellypc/ruby-conhecendo-o-metodo-zip-c29</link>
      <guid>https://dev.to/kellypc/ruby-conhecendo-o-metodo-zip-c29</guid>
      <description>&lt;p&gt;Esses dias estava pesquisando sobre a classe &lt;em&gt;Array&lt;/em&gt; em &lt;strong&gt;Ruby&lt;/strong&gt;, e me deparei com um método bem bacana para fazer de maneira menos penosa o merge entre arrays e assim podermos fazer algumas operações com eles.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;a = [45, 13, 90]
b = [30, 9, 180]
c = []

a.zip(b) { |x, y| c &amp;lt;&amp;lt; (x &amp;lt; y) }
print c
=&amp;gt; [false, false, true]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Nesse bloco de código pergunto se cada elemento do &lt;em&gt;array&lt;/em&gt; &lt;em&gt;a&lt;/em&gt; é menor do que cada elemento do &lt;em&gt;array&lt;/em&gt; &lt;em&gt;b&lt;/em&gt;, e salvo a resposta(booleano) dentro do &lt;em&gt;array&lt;/em&gt; &lt;em&gt;c&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Podemos também, somar os elementos do &lt;em&gt;array&lt;/em&gt;, confiram abaixo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;a = [45, 13, 90]
b = [30, 9, 180]
c = []

a.zip(b) { |x, y| c &amp;lt;&amp;lt; (x + y) }
print c
=&amp;gt; [75, 22, 270]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Nesse outro bloco, o processo é o mesmo, no entanto, estamos somando.&lt;/p&gt;

&lt;p&gt;Se precisarmos somente mesclar o elementos e inserir novos valores, é simples:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;a = [14, 54, 60]
b = [23, 44, 12]

[20, 30, 40].zip(a, b)
print c
 =&amp;gt; [[20, 14, 23], [30, 54, 44], [40, 60, 12]]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;E é isso, achei interessante e resolvi compartilhar com a comunidade. ;)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Referências:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://ruby-doc.org/core-2.7.0/Array.html#method-i-zip"&gt;Ruby-Doc.org&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.rubyguides.com/2017/10/array-zip-method/"&gt;RubyGuides&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apidock.com/ruby/v2_5_5/Enumerable/zip"&gt;APIdock&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
