Heim  >  Artikel  >  Java  >  Wie vergleiche ich Integer-Arrays in Java genau: Feste Größe vs. dynamische Größe?

Wie vergleiche ich Integer-Arrays in Java genau: Feste Größe vs. dynamische Größe?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-31 09:29:01472Durchsuche

How to Accurately Compare Integer Arrays in Java: Fixed Size vs. Dynamically Sized?

Vergleich von Ganzzahl-Arrays in Java

Beim Vergleich von Arrays in Java ist es wichtig, deren Äquivalenz sicherzustellen. Der Vergleich zweier Integer-Arrays stellt eine besondere Herausforderung dar, insbesondere wenn ein Array vordefinierte Werte enthält und das andere aus einer Eingabedatei stammt.

Verstehen des Problems

Der bereitgestellte Code versucht, zwei Arrays zu vergleichen, Array1 und Array2. Array1 hat eine feste Größe, während die Größe von Array2 dynamisch basierend auf der ersten aus der Eingabedatei gelesenen Zahl bestimmt wird. Die Absicht scheint darin zu bestehen, festzustellen, ob beide Arrays in Länge und Inhalt gleich sind.

Lösung des Problems

Die Codelogik reicht jedoch nicht aus, um die Gleichheit genau zu bestimmen. Es prüft, ob jedes Element in Array2 mit einem Element in Array1 übereinstimmt und gibt „wahr“ oder „falsch“ basierend auf einer einzelnen Übereinstimmung bzw. Nichtübereinstimmung aus. Dieser Ansatz reicht nicht aus, um die Arrays als Ganzes zu vergleichen.

Optimale Lösung

Für einen umfassenden Vergleich ist die Verwendung der integrierten Lösung eine einfachere und effizientere Lösung Arrays.equals()-Methode in Java:

<code class="java">boolean areEqual = Arrays.equals(array1, array2);</code>

Diese Methode bestimmt, ob zwei Arrays die gleiche Länge haben und ob alle entsprechenden Elemente gleich sind.

Hinweis zur Sortierung

Es ist wichtig zu beachten, dass Arrays, damit sie mit der Methode Arrays.equals() als gleich betrachtet werden, auch sortiert werden müssen. Im JavaDoc für die Methode heißt es: „Zwei Arrays gelten als gleich, wenn beide Arrays die gleiche Anzahl von Elementen enthalten und alle entsprechenden Elementpaare in den beiden Arrays gleich sind.“

Wenn die Arrays also gleich sind nicht von Natur aus sortiert, es ist notwendig, sie zu sortieren, bevor sie auf Gleichheit verglichen werden.

Das obige ist der detaillierte Inhalt vonWie vergleiche ich Integer-Arrays in Java genau: Feste Größe vs. dynamische Größe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn