Di solito, vector e array sono la stessa cosa e vengono utilizzati in modo intercambiabile durante la programmazione. Questo è nella maggior parte dei luoghi, quindi non dovresti preoccupartene molto la maggior parte del tempo.
Detto questo, il linguaggio è impreciso e talvolta abbiamo parole che hanno significati diversi in contesti diversi che finiscono per significare la stessa cosa, o una parola che ha due o più significati diversi.
In C un array è una serie di elementi di dati dello stesso tipo archiviati in memoria in modo contiguo. Java ha ereditato questo significato. Non è la stessa cosa di un elenco o di un vettore, poiché gli array sono più basilari di quelli.
Un vettore è un costrutto matematico definito come un oggetto che può essere aggiunto a un altro oggetto dello stesso tipo o moltiplicato per qualsiasi numero reale (o complesso) risultante in un altro vettore della stessa genere. Ha anche alcune altre proprietà che sono molto utili.
Un vettore ha dimensione . È il numero minimo di diversi vettori che devono essere combinati per ottenere ogni vettore possibile di quel tipo. Velocità e accelerazione sono vettori tridimensionali perché lo spazio ha 3 direzioni di base e aggiungendo multipli di quelle tre direzioni di base è possibile ottenere qualsiasi posizione nello spazio. La posizione in un piano è un vettore bidimensionale e i singoli numeri sono vettori 1-dimensionale.
Un modo per rappresentare un vettore di dimensione n consiste nell'utilizzare un array di n elementi ognuno dei quali rappresenta la quantità di ciascun vettore base che devi aggiungere per arrivare a il tuo vettore.
Dato che puoi rappresentare un vettore usando un arra di elementi, con il tempo, i due concetti sono stati equiparati. Quindi, in molti posti, sono semplicemente la stessa cosa e in alcuni linguaggi gli array sono chiamati vettori.
Un altro caso in cui una parola ha due significati diversi è, ad esempio, dimensione . La definizione di wikipedia di un vettore come array monodimensionale è un esempio. Non stai parlando di dimensione vettoriale qui. Stai parlando della rappresentazione computerizzata della struttura dei dati. Un vettore tridimensionale può essere rappresentato da una matrice "1-dimensionale" di dimensione 3. 3 numeri in linea. Una matrice 3x3 può essere rappresentata da una matrice "bidimensionale", che è ciò che i programmatori chiamano una matrice di matrici. Eppure una matrice 3x3 è anche un vettore matematico della dimensione 9 (poiché ha tutte le proprietà di un vettore) e ha 9 numeri. Confusione, eh?
Comunque, penso che la risposta sia semplicemente: non ti preoccupare. Tutto dipende dal contesto. Le due parole hanno origini diverse, ma nel contesto delle strutture dati, quando dicono vector significano esattamente array .