klasa Arrays - operacje na tablicach - np. sortowanie tablicy
Klasa Arrays udostępnia wydajne mechanizmy operowania na tablicach. Między innymi:
- wyszukiwanie elementów w tablicach - metoda binarySearch();
- szybkie sortowanie elementów w tablicach - metoda sort();
- wypełnianie całej tablicy określoną wartością - metoda fill();
- porównanie dwóch tablic - metoda equals();
- konwertowanie tablicy na listę - metoda asList() - patrz sekcja Lista - interfejs List oraz klasy ArrayList i LinkedList.
Przykład użycia klasy Arrays do posortowania elementów tablicy
int[],
java.util.Random.nextInt(),
java.util.Arrays.sort(),
Arrays.toString( ... )
import java.awt.Color;
import java.util.Random;
import java.util.Arrays;
class ArraySorterProgram {
static final int TABLE_SIZE = 10;
public static void main( String[] args ) {
System.out.println( "____________________________________" );
Random randomValue = new Random();
int[] tablica = new int[ TABLE_SIZE ];
for( int i=0; i<tablica.length; i++ ) {
tablica[i] = randomValue.nextInt( 2000000000 );
// System.out.println( tablica[i] );
}
System.out.println( "Tablica przed posortowaniem:" );
// System.out.println( Arrays.toString( tablica ) );
Main.displayTableInColumn( tablica );
ArraySorter arraySorter = new ArraySorter( tablica );
System.out.println( "\nTablica po posortowaniu:" );
// System.out.println( Arrays.toString( as.sort() ) );
Main.displayTableInColumn( arraySorter.sort() );
System.out.println( "____________________________________" );
}
static void displayTableInColumn( int[] tablica ) {
for( int i=0; i<tablica.length; i++ )
System.out.println( tablica[i] );
}
}
class ArraySorter {
private int[] tablica = new int[ Main.TABLE_SIZE ];
public ArraySorter( int[] tablica ) {
for( int i=0; i < tablica.length; i++ ) {
this.tablica[i] = tablica[i];
}
}
int[] sort() {
Arrays.sort( tablica );
return tablica;
}
}