Vettori e Matrici

Vettori o array chiamateli come volete

Vettore

Un vettore è un oggetto in java, in particolare una sequenza di elementi tutti dello stesso tipo. Un vettore per essere utilizzato va dichiarato con la parola chiave new:

int vet[ ] = new int[n];

dove vet è il nome del vettore e n è un numero positivo.

Ho due modi per inizializzare un vettore:

  1. int vet[ ] = new int[10];
  2. int vet[ ] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

Con il primo metodo creo un vettore di dieci elementi tutti inizializzati a zero; con il secondo creo un vettore che ha ogni elemento incluso nelle parentesi graffe e nello stesso ordine.

Se volessi creare un array di caratteri, allora dovrei fare:

  1. char vet[ ] = new char[10];
  2. char vet[ ] = { 'a', 'e', 'i', 'o', 'u' };  // Un array che contiene le vocali

Posso anche creare un array di stringhe:

  • String vet[ ] = new String[5];  // Array che contiene cinque stringhe

    Prendiamo in esame il vettore:

  • char vocali[] = { 'a', 'e', 'i', 'o', 'u' };

    Allora possiamo dire:

    • a            =>            in prima posizione        =>         indice 0        =>         vocali[0]
    • e            =>            in seconda posizione   =>         indice 1         =>         vocali[1]
    • i             =>            in terza posizione         =>         indice 2        =>         vocali[2]
    • o            =>            in quarta posizione      =>          indice 3        =>         vocali[3]
    • u            =>            in quinta posizione       =>         indice 4         =>        vocali[4]

    Procediamo con un altro esempio. Immaginiamo di avere un vettore di numeri interi e di voler trovare il più grande: è abbastanza intuitivo procedere con un ciclo for per individuarlo. Ecco il metodo TrovaMax che restituisce il massimo di un vettore:

    public static int TrovaMax(int vet[]){
        int i;
        int max = vet[0];
        for(i=0;i<vet.length;i++){    //  length = restituisce la lunghezza del vettore
             if(vet[i]>max) max = vet[i];
        }
        return max;
    }  

    Quando lavoriamo con gli array usiamo sempre il ciclo for, perché lavoriamo con una quantità ben definita di dati. Pertanto usare il while, anche se corretto a livello di algoritmo, sarebbe non aver capito l'utilità del for (praticamente è come se gli mancassimo di rispetto). 

    Matrice

    Una matrice è un array bidimensionale e come tale possiede due indici (riga e colonna). Quindi bisogna prestare attenzione solo alle coordinate, poi per identificare un valore o creare una matrice la sintassi non cambia molto rispetto ai "normali" array:

  • int M[ ][ ] = new int[5][5];  // Creo una matrice quadrata 5x5
  • x = M[5][2];  // Copio in una variabile l'elemento che ha coordinate (5, 2) dove 5 è l'indice della riga e 2 l'indice della colonna.


    Scarica il file OperazioniMatrici.java:

    https://mega.nz/#!LNNUSRja!S3_KCAsrzhRo1tFrWrF7tsFWP2I6AQBtwD_j2F_VxBw     
javaperstudenti.webnode.it
Creato con Webnode
Crea il tuo sito web gratis! Questo sito è stato creato con Webnode. Crea il tuo sito gratuito oggi stesso! Inizia