kramann.info
© Guido Kramann

Login: Passwort:










3.11.6 Visuelle Darstellung einer Matrix

3.11.6 Visual representation of a matrix (EN google-translate)

3.11.6 Wizualna reprezentacja macierzy (PL google-translate)

Eine Matrix ist im Quelltext eines Java-Programms ein zwei dimensionales Array.

A matrix is ​​included in the source code of a Java program zwei dimensionales Array.

Macierz jest zawarta w kodzie źródłowym programu Java zwei dimensionales Array.

Man mu bei Java zwischen Deklaration und Initialisierung unterscheiden. Die Deklaration stellt einen Bezeichner bereit, ber den auf dahinter stehende Daten zugegriffen werden kann. Wird nur eine Deklaration vorgenommen, so gibt es noch keine Daten. Die Verknpfung von Bezeichner und Daten erfolgt erst in der Initialisierung. Hier folgen ein paar Beispiele:

You have to distinguish between declaration and initialization in Java. The declaration provides an identifier that can be used to access data behind it. If only one declaration is made, there is no data yet. The combination of identifier and data only takes place during initialization. Here are a few examples:

Musisz rozróżnić deklaracje i inicjowanie w Javie. Deklaracja dostarcza identyfikator, który można wykorzystać do uzyskania dostępu do danych znajdujących się za nim. Jeśli zostanie złożona tylko jedna deklaracja, nie ma jeszcze danych. Łączenie identyfikatora i danych odbywa się tylko podczas inicjowania. Oto kilka przykładów:

//Declare x:
int x;
//Initialize x:
x=7;
//Declare and initialize x at once:
int x=7;


//Declare an integer array of one dimension:
int[] vector;
//Allocate five entities of memory for this variable:
//In Java each entity will be initialized with 0 automatically.
vector = new int[5];
//Declare and initialize a one dimensional array at once:
int[] vector = {2,8,3,4,0};
//alternative syntax:
int[] vector = new int[] {2,8,3,4,0};


//Declare an integer array with two dimensions:
int[][] matrix;
//Allocate five (lines) by four (columns) memory:
matrix = new int[5][4];
//Declare and initialize:
int[][] matrix = {
                     {1,3,3,4},
                     {1,2,8,4},
                     {0,2,3,6},
                     {1,2,9,4},
                     {1,5,3,4}
                 };

//Make up inhomogenous one:
int[][] matrix = int[3][];
for(int i=0;i<matrix.length;i++)
{
    matrix[i] = new int[i+2];
    for(int k=0;k<matrix[i].length;k++)
        matrix[i][k] = k*k;
}
//... same as:
int[][] matrix = {
                     {0,1},
                     {0,1,4},
                     {0,1,4,9}
                 };



Code 3.11.6-1: Deklaration und Initialisierung bei Arrays und einfachen Datentypen.

Beispiel

example

przykład

Screenshot of following Processing-on-PC-example.

Bild 3.11.6-1: Screenshot of following Processing-on-PC-example.

int[][] matrix = {
                     {0,0,2,0,0},
                     {0,1,1,1,0},
                     {2,1,2,1,2},
                     {0,1,1,1,0},
                     {0,0,2,0,0}
                 };

public void setup()
{
    size(500,500);
    frameRate(1);
}

public void draw()
{
    noStroke();
    for(int i=0;i<matrix.length;i++)
    {
        for(int k=0;k<matrix[i].length;k++)
        {
            if(matrix[i][k]==0)
                fill(0,0,0);
            else if(matrix[i][k]==1)
                fill(0,0,255);
            else
                fill(255,0,0);
                
            rect(k*(width/matrix[i].length),
                 i*(height/matrix.length),
                 width/matrix[i].length,
                 height/matrix.length);    
        }
    }
}

Code 3.11.6-2: matrix

matrix.zip -- sketch folder.