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;
	}

}