<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Say what???: Ruby Method of the Day - Array.&amp;</title>
    <link>http://drotner.org/articles/2007/10/23/ruby-method-of-the-day-array-intersection</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>by Kelly McCauley</description>
    <item>
      <title>Ruby Method of the Day - Array.&amp;amp;</title>
      <description>&lt;h3&gt;Signature&lt;/h3&gt;




&lt;div class="CodeRay"&gt;
  &lt;div class="code"&gt;&lt;pre&gt;array &amp;amp; other_array   &lt;span class="c"&gt;#=&amp;gt; new_array&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;&lt;code&gt;array &amp;#38; other_array&lt;/code&gt; returns &lt;code&gt;new_array&lt;/code&gt; which contains the
&lt;a href="http://en.wikipedia.org/wiki/Set_intersection"&gt;intersections&lt;/a&gt; of the two arrays.
Only unique intersections will be returned.  In other words, if &lt;code&gt;array&lt;/code&gt; and/or
&lt;code&gt;other_array&lt;/code&gt; contain duplicate elements, &lt;code&gt;new_array&lt;/code&gt; will not contain
duplicate intersections.&lt;/p&gt;

	&lt;h3&gt;Examples&lt;/h3&gt;




&lt;table class="CodeRay"&gt;&lt;tr&gt;
  &lt;td class="line_numbers" title="click to toggle" onclick="with (this.firstChild.style) { display = (display == '') ? 'none' : '' }"&gt;&lt;pre&gt;1&lt;tt&gt;
&lt;/tt&gt;2&lt;tt&gt;
&lt;/tt&gt;3&lt;tt&gt;
&lt;/tt&gt;4&lt;tt&gt;
&lt;/tt&gt;5&lt;tt&gt;
&lt;/tt&gt;&lt;/pre&gt;&lt;/td&gt;
  &lt;td class="code"&gt;&lt;pre ondblclick="with (this.style) { overflow = (overflow == 'auto' || overflow == '') ? 'visible' : 'auto' }"&gt;a = [&lt;span class="i"&gt;1&lt;/span&gt;,&lt;span class="i"&gt;2&lt;/span&gt;,&lt;span class="i"&gt;3&lt;/span&gt;,&lt;span class="i"&gt;4&lt;/span&gt;,&lt;span class="i"&gt;5&lt;/span&gt;,&lt;span class="i"&gt;6&lt;/span&gt;,&lt;span class="i"&gt;7&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;9&lt;/span&gt;,&lt;span class="i"&gt;10&lt;/span&gt;]        &lt;span class="c"&gt;#=&amp;gt; [1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10]&lt;/span&gt;&lt;tt&gt;
&lt;/tt&gt;a &amp;amp; [&lt;span class="i"&gt;0&lt;/span&gt;,&lt;span class="i"&gt;2&lt;/span&gt;,&lt;span class="i"&gt;4&lt;/span&gt;,&lt;span class="i"&gt;9&lt;/span&gt;,&lt;span class="i"&gt;11&lt;/span&gt;]                    &lt;span class="c"&gt;#=&amp;gt; [2, 4, 9]&lt;/span&gt;&lt;tt&gt;
&lt;/tt&gt;a &amp;amp; [&lt;span class="i"&gt;0&lt;/span&gt;,&lt;span class="i"&gt;11&lt;/span&gt;,&lt;span class="i"&gt;22&lt;/span&gt;]                       &lt;span class="c"&gt;#=&amp;gt; []&lt;/span&gt;&lt;tt&gt;
&lt;/tt&gt;a &amp;amp; [&lt;span class="i"&gt;0&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;7&lt;/span&gt;,&lt;span class="i"&gt;6&lt;/span&gt;,&lt;span class="i"&gt;-3&lt;/span&gt;]                  &lt;span class="c"&gt;#=&amp;gt; [6, 7, 8]&lt;/span&gt;&lt;tt&gt;
&lt;/tt&gt;a &amp;amp; [&lt;span class="i"&gt;0&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;8&lt;/span&gt;,&lt;span class="i"&gt;7&lt;/span&gt;,&lt;span class="i"&gt;6&lt;/span&gt;,&lt;span class="i"&gt;-3&lt;/span&gt;] &amp;amp; [&lt;span class="i"&gt;1&lt;/span&gt;,&lt;span class="i"&gt;2&lt;/span&gt;,&lt;span class="i"&gt;3&lt;/span&gt;,&lt;span class="i"&gt;4&lt;/span&gt;,&lt;span class="i"&gt;5&lt;/span&gt;,&lt;span class="i"&gt;6&lt;/span&gt;]  &lt;span class="c"&gt;#=&amp;gt; [6]&lt;/span&gt;&lt;tt&gt;
&lt;/tt&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;&lt;/table&gt;



	&lt;h3&gt;Documentation Reference&lt;/h3&gt;


	&lt;p&gt;Ruby version 1.8.6&lt;/p&gt;


	&lt;p&gt;&lt;a href="http://www.ruby-doc.org"&gt;www.ruby-doc.org&lt;/a&gt; : &lt;a href="http://www.ruby-doc.org/core/classes/Array.html#M002235"&gt;Array.&amp;#38;&lt;/a&gt;&lt;/p&gt;


</description>
      <pubDate>Tue, 23 Oct 2007 00:01:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:e1a90b95-b955-47be-a725-9bc52ed71c4d</guid>
      <author>Kelly McCauley</author>
      <link>http://drotner.org/articles/2007/10/23/ruby-method-of-the-day-array-intersection</link>
      <category>Ruby Method of the Day</category>
      <category>Programming</category>
      <category>ruby</category>
      <category>rmotd</category>
    </item>
  </channel>
</rss>
