C #: matrices
Una matriz almacena una colección secuencial de tamaño fijo de elementos del mismo tipo. Una matriz se usa para almacenar una colección de datos, pero a menudo es más útil pensar en una matriz como una colección de variables del mismo tipo almacenadas en ubicaciones de memoria contiguas.
En lugar de declarar variables individuales, como número0, número1, ... y número99, declaras una variable de matriz como números y usas números [0], números [1] y ..., números [99] para representar variables individuales. Se accede a un elemento específico de una matriz mediante un índice.
Todas las matrices constan de ubicaciones de memoria contiguas. La dirección más baja corresponde al primer elemento y la dirección más alta al último elemento.
Declaración de matrices
Para declarar una matriz en C #, puede usar la siguiente sintaxis:
datatype[] arrayName;
dónde,
tipo de datos se utiliza para especificar el tipo de elementos en la matriz.
[] especifica el rango de la matriz. El rango especifica el tamaño de la matriz.
arrayName especifica el nombre de la matriz.
Por ejemplo,
double[] balance;
Inicializar una matriz
Declarar una matriz no inicializa la matriz en la memoria. Cuando se inicializa la variable de matriz, puede asignar valores a la matriz.
Array es un tipo de referencia, por lo que debe usar el newpalabra clave para crear una instancia de la matriz. Por ejemplo,
double[] balance = new double[10];
Asignar valores a una matriz
Puede asignar valores a elementos individuales de la matriz, utilizando el número de índice, como -
double[] balance = new double[10];
balance[0] = 4500.0;
Puede asignar valores a la matriz en el momento de la declaración, como se muestra:
double[] balance = { 2340.0, 4523.69, 3421.0};
También puede crear e inicializar una matriz, como se muestra:
int [] marks = new int[5] { 99, 98, 92, 97, 95};
También puede omitir el tamaño de la matriz, como se muestra:
int [] marks = new int[] { 99, 98, 92, 97, 95};
Puede copiar una variable de matriz en otra variable de matriz de destino. En tal caso, tanto el destino como el origen apuntan a la misma ubicación de memoria:
int [] marks = new int[] { 99, 98, 92, 97, 95};
int[] score = marks;
Cuando crea una matriz, el compilador de C # inicializa implícitamente cada elemento de la matriz a un valor predeterminado según el tipo de matriz. Por ejemplo, para una matriz int, todos los elementos se inicializan a 0.
Acceso a elementos de matriz
Se accede a un elemento indexando el nombre de la matriz. Esto se hace colocando el índice del elemento entre corchetes después del nombre de la matriz. Por ejemplo,
double salary = balance[9];
El siguiente ejemplo muestra los conceptos de declaración, asignación y acceso a matrices antes mencionados:
using System;
namespace ArrayApplication {
class MyArray {
static void Main(string[] args) {
int [] n = new int[10]; /* n is an array of 10 integers */
int i,j;
/* initialize elements of array n */
for ( i = 0; i < 10; i++ ) {
n[ i ] = i + 100;
}
/* output each array element's value */
for (j = 0; j < 10; j++ ) {
Console.WriteLine("Element[{0}] = {1}", j, n[j]);
}
Console.ReadKey();
}
}
}
Cuando el código anterior se compila y ejecuta, produce el siguiente resultado:
Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Usando el bucle foreach
En el ejemplo anterior, usamos un bucle for para acceder a cada elemento de la matriz. También puede utilizar unforeach instrucción para iterar a través de una matriz.
using System;
namespace ArrayApplication {
class MyArray {
static void Main(string[] args) {
int [] n = new int[10]; /* n is an array of 10 integers */
/* initialize elements of array n */
for ( int i = 0; i < 10; i++ ) {
n[i] = i + 100;
}
/* output each array element's value */
foreach (int j in n ) {
int i = j-100;
Console.WriteLine("Element[{0}] = {1}", i, j);
}
Console.ReadKey();
}
}
}
Cuando el código anterior se compila y ejecuta, produce el siguiente resultado:
Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Matrices de C #
A continuación, se presentan algunos conceptos importantes relacionados con la matriz que deberían ser claros para un programador de C #
No Señor. | Concepto y descripción |
---|---|
1 | Matrices multidimensionales C # admite matrices multidimensionales. La forma más simple de la matriz multidimensional es la matriz bidimensional. |
2 | Matrices irregulares C # admite matrices multidimensionales, que son matrices de matrices. |
3 | Pasar matrices a funciones Puede pasar a la función un puntero a una matriz especificando el nombre de la matriz sin un índice. |
4 | Matrices de parámetros Se utiliza para pasar un número desconocido de parámetros a una función. |
5 | La clase Array Definida en el espacio de nombres del sistema, es la clase base para todas las matrices y proporciona varias propiedades y métodos para trabajar con matrices. |