как сравнить два массива в scala?

<pre><code>val a: array[int] = array(1,2,4,5) val b: array[int] = array(1,2,4,5) a==b // false </code></pre><p>есть ли способ сопоставления с образцом, чтобы увидеть, эквивалентны ли два массива (или последовательности)?</p>

<p>вам нужно изменить свою последнюю строку на</p><pre><code>a.deep == b.deep </code></pre><p>сделать глубокое сравнение массивов.</p>

<p>от <a href="https://rads.stackoverflow.com/amzn/click/com/0596155956">программирование scala</a> :</p><pre><code>array(1,2,4,5).sameelements(array(1,2,4,5)) </code></pre>

<pre><code> a.corresponds(b){\_ == \_} </code></pre><blockquote> <p>scaladoc: <code>true</code>, если обе последовательности имеют одинаковую длину и <code>p(x, y)</code> <code>true</code> для всех соответствующих элементов <code>x</code> из <code>this</code> обернутого массива и <code>y</code> из <code>that</code>, в противном случае <code>false</code></p> </blockquote>

<p>для лучшей производительности вы должны использовать:</p><pre><code>java.util.arrays.equals(a, b) </code></pre><p>это очень быстро и не требует дополнительного выделения объектов. <code>array[t]</code> в scala совпадает с <code>object[]</code> в java. та же история для примитивных значений, таких как <code>int</code>, который является java <code>int</code>.</p>