Tô com essa dúvida, alguém poderia me explicar?
Array
é o termo Americano para vetor/matriz.
Um Array
Unidimensional é um vetor, exemplo:
int [] vetor = new int[];
Um Array
Bidimensional é uma matriz, exemplo:
int [][] matriz = new int[][];
Entendi. Obrigada!
Vale notar que por mais que o conceito seja o mesmo de uma estrutura linear unidimensional de acesso aleatório, etc, etc, que há linguagens que possuem diferentes estruturas com o nome de “vector” e “array”, como é o caso do C++ e de Java, por exemplo.
Dai nesses casos tem que ver a documentação da linguagem para entender as diferenças praticas na implementação de cada uma.
eu estou programando aprendendo C e Java, poderia me explicar o que quer dizer com “diferentes estruturas”?
Em Java vc tem os arrays comuns, cujo tamanho não pode ser alterado e que vc declara da seguinte forma:
int[] array1 = { 1, 2, 3 };
int[][] array2 = { {1, 2}, {3, 4} };
E tem também as implementações de List, como ArrayList e Vector.
Estas 2 classes funcionam de forma semelhante, ambas representam um array que pode aumentar ou diminuir conforme a necessidade.
Contudo, a diferença é que Vector é thread-safe, o que significa que quando vc precisa de um array dinamico que vai ser acessado por multiplas thread, provavelmente vc vai querer usá-lo.
Vc pode saber mais sobre cada uma delas nos links abaixo:
https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/util/ArrayList.html
https://docs.oracle.com/en/java/javase/12/docs/api/java.base/java/util/Vector.html
No C++, como o @Kronal disse, há as classes std::vector e std::array.
A std::array é um container que vc pode seguramente usar no lugar dos arrays comuns ao estilo de C.
int array1[3] = { 1, 2, 3 };
std::array<int, 3> array2{1, 2, 3};
Já o std::vector é dinamico, seu tamanho cresce conforme a necessidade.
Saiba mais em:
Estava me referindo a que “array” é uma ideia, um conceito, mas existem diferentes jeitos de colocar isso em pratica.
Array ou vetor são um conceito que é parte das chamadas “estruturas de dados”.
Estruturas de dados são formas de tu organizar informações e definir o jeito que tu vai manipular essas informações.
Dai tem diferentes jeitos que tu pode programar o funcionamento da ideia de “array” como software, e na hora dos caras que criaram algumas linguagens batizaram algumas dessas implementações de “array” outras de “vector” ou “vetor”, sendo que tem linguagens que tem estruturas de dados chamadas com os 2 nomes mas tem alguns detalhes diferentes.