Tit   Inh   Ind   1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   <<   <   >   >> 

12.9 Die Klasse Arrays



Seit dem JDK 1.2 gibt es die Klasse Arrays im Paket java.util, die einige nützliche Methoden zum Zugriff auf Arrays zur Verfügung stellt. Sie kann beispielsweise ein Array mit vorgegebenen Werten füllen, eine binäre Suche durchführen, das Array sortieren oder zwei Arrays miteinander vergleichen.

 JDK1.1/1.2 

Die wichtigsten Methoden sind fill, binarySearch, sort und equals:

public static void fill(int[] a, int val)

public static int binarySearch(int[] a, int key)

public static void sort(int[] a)

public static boolean equals(int[] a, int[] a2)
java.util.Arrays

Alle Methoden stehen auch in vergleichbaren Versionen für die anderen primitiven Typen zur Verfügung. Wir wollen uns die Verwendung der Klasse Arrays am Beispiel eines einfachen Programms ansehen, das ein Array von Ganzzahlen sortiert:

001 /* Listing1212.java */
002 
003 import java.util.*;
004 
005 public class Listing1212
006 {
007   public static void main(String[] args)
008   {
009 	final int SIZE = 20;
010 	int values[] = new int[SIZE];
011 	Random rand = new Random();
012 	//Erzeugen uns Ausgeben des unsortierten Arrays
013 	for (int i = 0; i < SIZE; ++i) {
014 	  values[i] = rand.nextInt(10 * SIZE);
015 	}
016 	for (int i = 0; i < SIZE; ++i) {
017 	  System.out.println(values[i]);
018 	}
019 	//Sortieren des Arrays
020 	Arrays.sort(values);
021 	//Ausgeben der Daten
022 	System.out.println("---");
023 	for (int i = 0; i < SIZE; ++i) {
024 	  System.out.println(values[i]);
025 	}
026   }
027 }
Listing1212.java
Listing 12.12: Sortieren eines Arrays

Die Sortiermethoden der Klasse Arrays können Arrays mit primitiven Datentypen nur in aufsteigender Reihenfolge sortieren. Zusätzlich gibt es eine Variante, die ein Array von Elementen des Typ Object sortiert und dazu als zweites Argument ein Comparator-Objekt erwartet. Auf die Bedeutung und Anwendung dieser Klasse und ihre Anwendung im Rahmen der Collection-Klassen des JDK 1.2 werden wir in Abschnitt 27.7 zurückkommen.

 Hinweis 


 Tit   Inh   Ind   1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24   25   26   27   28   29   30   31   32   <<   <   >   >> 
Go To Java 2, Addison Wesley, Version 1.0.2, © 1999 Guido Krüger, http://www.gkrueger.com