¿Qué es System.Array en C#?

Que Es System Array En C



C# admite el uso de matrices como estructura de datos, lo que nos permite almacenar una colección de elementos del mismo tipo en un orden secuencial de un tamaño fijo. Todas las propiedades de matriz en C# se derivan de la Sistema.Array class, que sirve como clase base para los tipos de matriz.

Dado que es una clase base abstracta, no es posible crear una instancia de la clase System.Array directamente. En su lugar, podemos crear instancias de una de las clases derivadas de System.Array. Todos los tipos de matriz en C# se basan en System.Array.

Además de las matrices unidimensionales, C# también tiene matrices multidimensionales y matrices irregulares. Una matriz multidimensional tiene múltiples o más de una dimensión. En una matriz irregular, cada elemento puede ser una matriz de diferentes tamaños. En palabras simples, una matriz irregular es una matriz de matrices.







¿Para qué se utiliza la clase System.Array?

La clase System.Array proporciona varios métodos y propiedades para manipular matrices en C#. Estos métodos nos permiten leer y modificar los valores almacenados en una matriz, obtener información sobre el tamaño y la forma de una matriz y buscar elementos en una matriz.



Algunos métodos comunes incluyen GetValue(), SetValue(), GetLength() e IndexOf(). El Sistema.Array class también nos permite ordenar, buscar y manipular diferentes arreglos.



Por ejemplo, para obtener la longitud de la matriz, el Propiedad de longitud se usa El Propiedad de clasificación puede devolver las dimensiones totales presentes en una matriz. El Propiedad GetLength da la longitud de una dimensión específica en una matriz multidimensional.





Métodos y propiedades en System.Array C#

Aquí hay algunos métodos y propiedades que se usan en System.Array C#:

Claro(): Este es un método que está disponible para el público y se puede acceder desde cualquier parte del código. Este método puede establecer un rango particular de elementos dentro de una matriz en referencia nula o cero.



Copiar(): Este es un método público compartido que se puede sobrecargar y usar para copiar una sección específica de elementos de una matriz a otra matriz.

ObtenerLongitud(): Devuelve un entero de 32 bits que muestra el total de elementos en una dimensión particular de una matriz.

ObtenerLongitudLarga(): Este método devuelve un entero de 64 bits, que nos da el total de elementos en una dimensión específica de la matriz.

ObtenerLímiteInferior(): Este método recupera el límite inferior de una dimensión particular de la matriz, comenzando en el índice 0.

ObtenerLímiteSuperior(): Este método recupera el límite superior de una dimensión específica de la matriz, comenzando en el índice 0.

ObtenerValor(): Este método recupera el valor de un elemento específico en la matriz, comenzando en el índice 1.

Índice de(): Este es un método compartido público que se puede sobrecargar para devolver el índice o el desplazamiento de la primera aparición de un valor particular en una matriz unidimensional.

EsTamañoFijo(): Este método indica si una matriz tiene un tamaño fijo o no.

EsSoloLectura(): El método da un valor que indica si una matriz es de solo lectura o no.

ÚltimoÍndiceDe(): Este es un método público compartido que se puede sobrecargar. Proporciona el índice de la última aparición de un valor en una matriz unidimensional.

Longitud(): Este método da la longitud de las matrices. Es propiedad pública y genera un valor entero de 32 bits.

Distancia larga(): Este método le dice a los elementos en todas las dimensiones de la matriz. Devuelve un valor entero de 64 bits.

Rango(): Este método devuelve el número de dimensiones que tiene la matriz.

Redimensionar(): Este método cambia el tamaño de una matriz al número especificado de elementos.

Contrarrestar(): Este método puede invertir el orden de los elementos en una matriz unidimensional.

Clasificar(): Este método organiza los elementos en una matriz unidimensional en orden ascendente o descendente según sus valores.

Código de ejemplo

El siguiente código inicializa una matriz de enteros y demuestra varios Sistema.Array métodos que se pueden usar con matrices en C#. El resultado de cada método se muestra por separado en la consola.

usando el sistema ;
programa de clase
{
    estático vacío Principal ( cadena [ ] argumentos )
    {
        // Inicializar una matriz de enteros
        En t [ ] números = { 1 , 2 , 3 , 4 , 5 } ;


        // Borrar el contenido de la matriz

Formación. Claro ( números , 0 , números. Longitud ) ;

Consola. Línea de escritura ( 'Array después de borrar:' ) ;

        para ( En t i = 0 ; i < números. Longitud ; i ++ )

        {

Consola. Escribir ( números [ i ] + ' ' ) ;

        }

Consola. Línea de escritura ( ) ;

        // Copiar el contenido de otra matriz en nums

        En t [ ] numsCopiar = { 7 , 8 , 9 } ;

Formación. Copiar ( numsCopiar , números , numsCopy. Longitud ) ;

Consola. Línea de escritura ( 'Array después de copiar:' ) ;

        para ( En t i = 0 ; i < números. Longitud ; i ++ )

        {

Consola. Escribir ( números [ i ] + ' ' ) ;

        }

Consola. Línea de escritura ( ) ;

        // Obtenga la longitud y la longitud larga de la matriz

        En t longitud = números. ObtenerLongitud ( 0 ) ;

        largo distancia larga = números. ObtenerLongitudLarga ( 0 ) ;

Consola. Línea de escritura ( 'Longitud de la matriz: ' + longitud ) ;

Consola. Línea de escritura ( 'Longitud larga de la matriz:' + distancia larga ) ;

        // Obtener los límites superior e inferior de la matriz

        En t límite inferior = números. ObtenerLímiteInferior ( 0 ) ;

        En t límitesuperior = números. ObtenerLímiteSuperior ( 0 ) ;

Consola. Línea de escritura ( 'Límite inferior de la matriz:' + límite inferior ) ;

Consola. Línea de escritura ( 'Límite superior de la matriz:' + límitesuperior ) ;

        // Obtenga el valor en un índice específico en la matriz

        En t valueAtIndex = ( En t ) números. ObtenerValor ( 1 ) ;

Consola. Línea de escritura ( 'Valor en el índice 1:' + valueAtIndex ) ;

        // Encuentra el índice de un valor específico en la matriz

        En t índiceDeValor = Formación. Índice de ( números , 9 ) ;

Consola. Línea de escritura ( 'Índice de valor 9:' + índiceDeValor ) ;

        // Comprobar si la matriz tiene un tamaño fijo y solo lectura

bool es de tamaño fijo = números. EsTamañoFijo ;

bool es de solo lectura = números. es solo lectura ;

Consola. Línea de escritura ( '¿El tamaño es fijo?' + esTamañoFijo ) ;

Consola. Línea de escritura ( '¿Es de solo lectura?' + es de solo lectura ) ;

        // Encuentra el último índice de un valor específico en la matriz

        En t últimoÍndiceDeValor = Formación. ÚltimoÍndiceDe ( números , 9 ) ;

Consola. Línea de escritura ( 'Último índice del valor 9:' + últimoÍndiceDeValor ) ;

        // Obtener la longitud de la matriz

        En t longitudOtra vez = números. Longitud ;

Consola. Línea de escritura ( 'Longitud de la matriz de nuevo:' + longitudOtra vez ) ;

        // Obtener el rango de la matriz

        En t rango = números. Rango ;

Consola. Línea de escritura ( 'Rango de la matriz: ' + rango ) ;

        // Cambiar el tamaño de la matriz

Formación. Redimensionar ( números de referencia , 10 ) ;

 
       
        // Invertir el contenido de la matriz

Formación. Contrarrestar ( números ) ;

Consola. Línea de escritura ( 'Array después de invertir:' ) ;

        para ( En t i = 0 ; i < números. Longitud ; i ++ )

        {

Consola. Escribir ( números [ i ] + ' ' ) ;

        }

Consola. Línea de escritura ( ) ;

 

        // Ordenar el contenido de la matriz

Formación. Clasificar ( números ) ;

Consola. Línea de escritura ( 'Array después de ordenar:' ) ;

        para ( En t i = 0 ; i < números. Longitud ; i ++ )

        {

Consola. Escribir ( números [ i ] + ' ' ) ;

        }

}

}

Producción

Conclusión

La clase System.Array en C# proporciona una base para trabajar con matrices de todo tipo. Ya sea que necesitemos crear una matriz unidimensional simple o una matriz multidimensional compleja, la clase System.Array proporciona diferentes métodos para manipular y trabajar con datos de manera efectiva. Para obtener una descripción detallada de System.Array en C#, lea el artículo.