Gyakorlati alapok III.

Tömbműveletek objektumorientáltan

 

Az alábbi fejezetben 3 alapszintű tömbműveletet implementálunk (véletlenszám-generálás, minimum-, illetve maximumkeresés), de immár objektumorientáltan, azaz a funkciókat lényegében külön osztályokba rendezve. Ezen funkciók a következőek lehetnek:

Nézzük meg a futtatható Java-kódot:

 

www.informatika-programozas.hu - Futtatható Java-kód!

 

 

 

 

 

 

 

 

Main.java

 

public class Main {

public static void main(String[] args) {
    ArrayRandom arrayRandom = new ArrayRandom(10, 1000);
    SelectionMinAndMax selectionMinAndMax = new SelectionMinAndMax();
    View view = new View();

    int[] array = arrayRandom.setArray();
    view.printArray(array);
    view.printMin(selectionMinAndMax.searchingMin(array));
    view.printMax(selectionMinAndMax.searchingMax(array));
    }
}

 

ArrayRandom.java

 

public class ArrayRandom {

private int arraySize;
private int randomBound;

ArrayRandom (int arraySize, int randomBound) {
    this.arraySize = arraySize;
    this.randomBound = randomBound;
}

int[] setArray() {
    int[] array = new int[arraySize];
    for (int i = 0; i < array.length; i++){
        array[i] = (int)(Math.random() * randomBound);
    }

    for(int i = array.length-1; i > 0; i--)
        for(int j = 0; j < i; j++)
            if(array[j] > array[j+1]){
                int tarolo = array[j];
                array[j] = array[j+1];
                array[j+1] = tarolo;
            }
    return array;
    }
}

 

SelectionMinAndMax.java

 

public class SelectionMinAndMax {

private int number = 0;

int searchingMin(int[] array) {
    number = 101;
    for(int i = 0; i < array.length; i++) {
        if(array[i] < number){
            number = array[i];
        }
    }
    return number;
}

    int searchingMax(int[] array) {
    for(int i = 0; i < array.length; i++) {
        if(array[i] > number){
            number = array[i];
        }
    }
    return number;
    }
}

 

View.java

 

public class View {

void printArray(int[] array) {
    for (int i = 0; i < array.length; i++){
        System.out.print(array[i] + " ");
    }
    System.out.println();
}

void printMin(int number) {
    System.out.println("The minimum of the array is: " + number);
}

void printMax(int number) {
    System.out.println("The maximum of the array is: " + number);
    }
}

 

Végeredmény (például):

1 38 109 242 289 352 364 712 906 923
The minimum of the array is: 1
The maximum of the array is: 923