Guardar información en el ámbito de la informática es obligatorio para poder llevar a cabo muchas o casi todas las operaciones habituales dentro de cualquier programa o proceso. Por eso se usan los arrays, quédate con este término.
En la programación existen multitud de estructuras de datos complejas que sirven para guardar información de manera más organizada que con simples variables. Una de estas estructuras son los arrays, típicamente utilizados en cualquier lenguaje de programación actual.
Si quieres descubrir qué son los arrays, qué características principales tienen, las diferentes dimensiones en las que se pueden organizar y un ejemplo de cómo se declaran y acceden a ellas en diferentes lenguajes de programación, sigue leyendo este artículo.
¿Qué son los arrays?
Vamos directo a expresar su significado. Un array es una manera de poder guardar datos del mismo tipo o clase (Enteros, carácteres, booleanos, etc.).
Es posible el acceso a cada elemento de un array a través de un número entero que se denomina índice (pueden existir 2 o más índices según la dimensionalidad del array).
La numeración de estos elementos dentro del array comienza en 0 (primer elemento del array) y finaliza en n-1 (último elemento del array) donde n es el tamaño completo de dicho array.
Para utilizar los arrays de manera adecuada se realizan las siguientes acciones sobre ellos:
- Declarar el array
- Crear el array e inicializarlo (Esta acción puede ser incluida en la declaración)
- Acceder y utilizar el array
Características principales de los arrays
Las principales características de un array son:
- Tiene un nombre de variable único que representa a cada elemento dentro de él y estos elementos son diferenciados por un índice.
- Los elementos dentro del array son guardados en posiciones de memoria de forma continua.
- Se puede acceder a cada elemento individual del array de manera directa o aleatoria.
Dimensionalidades de los arrays
Dependiendo de la forma como se declaran o construyen los arrays, se pueden clasificar en: unidimensional, bidimensional o multidimensional.
Los más utilizados son los arrays estructurados como un vector (unidimensionales) o como una matriz (bidimensionales), aunque se pueden crear estructuras de más de 2 dimensiones (multidimensionales) sin ningún problema.
Arrays unidimensionales
Un array unidimensional (vector) es aquel en el cual se puede acceder a cualquier elemento solamente con un índice.
Se puede imaginar como si se tratase de una lista de datos en la cual, para referirnos a cada elemento de dicha lista, emplearemos un número (índice) para indicar la posición en la que podemos encontrar dicho elemento dentro de ella.
Arrays bidimensionales
En el caso de los arrays bidimensionales (También llamados tablas o matríces), son 2 los índices necesarios para localizar cualquier elemento.
Cualquier elemento dentro del array bidimensional se puede imaginar como un elemento que se encuentra localizado dentro de una posición determinadas en un “eje X” y un “eje Y”.
En la imagen anterior, si cogemos cualquier posición dentro del array como una posición {x,y}:
- {0,0} corresponde al número 1 azul.
- {2,3} corresponde al número 1 rojo.
- {4,4} corresponde al número 2 verde.
Arrays multidimensionales
También se pueden crear arrays de más de 2 dimensiones y son los denominados arrays multidimensionales.
En este caso el número de índices viene determinado por el número de dimensiones de nuestro array, por ejemplo, para un array tridimensional el número de índices sería 3.
Igual que ocurre con los otros tipos de arrays, cualquier elemento puede ser localizado mediante una posición concreta.
Si cogemos como ejemplo la imagen anterior, se trata de un array tridimensional, en el que, cualquier elemento, puede ser localizado mediante una posición {x,y,z}.
Por ejemplo:
- Para el cuadrado rojo que está en la cara inferior izquierda la posición sería {0,2,0}
- Si queremos localizar el cuadrado verde de la cara inferior derecha sería {2,1,1}
Declaración y acceso de arrays en varios lenguajes
Los arrays, como dije anteriormente, son una estructura básica dentro de cualquier lenguaje de programación.
Pero cada lenguaje administra, declara y usa los arrays de manera distinta.
A continuación expongo una breve guía sobre la declaración y el acceso a arrays con distintos lenguajes de programación.
Anotación: Todas las declaraciones de arrays que se van a hacer a continuación se hacen de forma vacía, es decir, no se inicializan valores dentro de dicha declaración, pero perfectamente se pueden inicializar valores dentro del array a la hora de la declaración.
Array en C y C++
Para declarar un array unidimensional tanto en C como en C++, la sentencia a utilizar es:
Tipo_dato nombre_array[número_elementos];
Donde número de elementos debe ser mayor o igual a 1.
Un ejemplo podría ser: int ejemplo[7];
Para acceder a cualquier posición dentro dicho array, la sentencia a utilizar es:
Nombre_array[posición];
Donde “posición” debe encontrarse en el rango desde 0 a “número_elementos”-1.
Por tanto, si por ejemplo quisiéramos acceder a la posición 6 de dicho array, la sentencia a utilizar sería ejemplo[5]; ya que, como dijimos anteriormente, los índices en los arrays comienzan en la posición 0.
En el caso de los arrays bidimensionales y multidimensionales, la declaración es igual que para los unidimensionales aumentando el número de “corchetes” donde quedan especificadas las dimensiones del array.
Por ejemplo, para un array bidimensional un ejemplo de declaración sería: char palabras[4][5]; mientras que si queremos declarar un array de 4 dimensiones un ejemplo sería: bool elección[3][2][3][2];
A la hora de acceder estamos ante la misma situación aumentando las dimensiones en la consulta. Por ejemplo: palabras[2][0]; o elección[0][0][1][2];
Array en Java
Declarar y acceder a un array en Java es muy parecido a C o C++.
La principal diferencia radica en que Java trata a un array como si fuera un objeto mientras que en C y C++ se trata como si fuera una variable.
La sentencia utilizada para declarar un array unidimensional en Java es:
Tipo_dato nombre_array[];
Nombre_array = new tipo_dato[tamaño_array];
Y para acceder la sentencia sería:
nombre_array[posición];
Un ejemplo sería:
Int números[]; // Declaramos un array “números” de tipo entero
números= new int[8]; // Inicializamos un objeto “números” de tipo array de números enteros con 9 elementos.
números[5]; // Accedemos al sexto elemento dentro del array “números”
Para arrays de más dimensiones sería exactamente igual solamente añadiendo más “corchetes” con las dimensiones deseadas.
Array en Javascript
En el caso de Javascript, para declarar un array existen 2 métodos:
Var nombre_array = new Array();
o
Var nombre_array = [];
Para acceder a cualquier elemento dentro del array la sentencia sería:
nombre_array [posición];
Para arrays multidimensionales en Javascript podéis ver el siguiente tutorial.
Array en PHP
Finalmente, vamos a ver cómo declarar y acceder a los elementos de un array con PHP.
Para declarar un array unidimesional, la sintaxis sería:
$nombre_variable = array();
Ejemplo: $colores = array();
En el caso de que queramos declarar un array multidimensional (2 ó más dimensiones) simplemente habría que ir concatenando la función array() para cada dimensión dentro de la dimensión anterior:
$nombre_variable = array(array(…));
Por ejemplo, si queremos un array bidimensional sería:
$tabla = array(array());
Mientras que si queremos uno tridimensional sería:
$variable = array(array(array()));
Para acceder a los arrays en PHP la sentencia a utilizar sería:
$nombre_variable[posición];
Ejemplo: $colores[3];
Y en el caso de multidimensionales simplemente basta con ir incluyendo “corchetes” con la posición dentro de dicha dimensión. Ejemplo: $variable[3][2][0];
¡Organiza tus datos con la ayuda de los arrays!
Llegados a este punto se debería tener una visión más clara sobre cómo funcionan los arrays en la programación, conocer su significado y la importancia que tienen.
Los arrays no se quedan aquí, esto es básicamente el principio, ya que, lo realmente interesante dentro de los arrays, son las búsquedas y funciones que se pueden llevar a cabo gracias a ellos.
Por tanto, las posibilidades son inmensas, solo hay que saber utilizar estas estructuras de programación para el desarrollo de cualquier programa, sistema o página que se desee.
Si este artículo ha sido de tu interés puedes echar un vistazo a otros escritos por el mismo autor aquí.
Comentarios
muy bueno muchas gracias!
ta chida la info
Excelente, me ayudo mucho en mi tarea.