Cómo inicializar una matriz

Según las otras respuestas, hay varias formas de inicializar matrices en varios idiomas. Pero hay que considerar un enfoque diferente: ¿cuándo podría ser valioso no inicializar una matriz?

La respuesta obvia es cuando el contenido de cualquier elemento de la matriz se debe escribir antes de leerlo, un ejemplo es un búfer de E / S que tiene una longitud conocida de datos colocada en él antes de que se usen esos datos.

Existe otra situación en la que es posible que no desee inicializar una matriz, y es cuando tiene una matriz muy grande que se usa con poca frecuencia pero de forma repetitiva. Así es como funciona:

Cada elemento de la matriz ahora se convierte en una estructura u objeto que contiene un número de generación, también conocido como GN. Realiza una “inicialización inicial” de toda la matriz UNA VEZ en el momento en que la asigna en la memoria, estableciendo el GN de ​​cada elemento en cero. Luego, cada vez que “usa” la matriz, incrementa un GN maestro. Para cada acceso a la matriz, verifica la GN del elemento de la matriz con la GN maestra. Si el GN del elemento es menor que el maestro, inicialice el elemento y establezca el GN del elemento igual al maestro. Si el GN del elemento es igual al maestro, entonces el elemento se ha inicializado y el elemento se puede usar como está.

Gracias a la experiencia, descubrí que el uso de un Número de generación para controlar la inicialización de la matriz puede ahorrar mucho tiempo de CPU cuando la matriz se agranda, se usa de forma escasa pero repetitiva en comparación con la inicialización de toda la matriz antes de cada uso.

cosas = []

Bastante fácil, ¿verdad? Si estás usando Python, supongo.

¿Realmente esperabas una respuesta útil sin que nadie supiera qué idioma estás usando? ¿O por qué los documentos para ese idioma no ayudaron? ¿O lo que buscó en Google, que no pudo proporcionar soluciones útiles?

La programación es una disciplina de prueba y error, que requiere mucha investigación. Aprender a mirar la documentación es fundamental. Y este es exactamente el tipo de cosas que debería poder responder, sin pedir ayuda.

No ha especificado el idioma que desea usar. Cada idioma tiene sus diferencias. Si desea inicializar la matriz en lenguajes dinámicos como JavaScript, Python, PHP, etc., no tiene que especificar el tipo de elementos en la matriz y puede colocar diferentes tipos de valores. Para lenguajes como C ++, Java, C #, debe ser específico sobre el tipo de valores en la matriz.

JavaScript:

var myArray = [‘this’, ‘is’, ‘my’, ‘first’, ‘array’, 1];
// nombre var = elementos

Pitón:

myArary = [‘this’, ‘is’, ‘my’, 1, ‘array’];
// nombre = elementos

PHP:

// versión <5.4
$ myArray = array (‘this’, ‘is’, ‘my’, 1, ‘array’);
// nombre = elementos

//> = 5.4
$ myArray = [‘this’, ‘is’, ‘my’, 1, ‘array’];
// nombre = elementos

C ++:

string myArray [5] = {“this”, “is”, “my”, “first”, “array”};
// nombre del tipo [número de elementos] = elementos;

Java:

String myArray [] = {“this”, “is”, “my”, “first”, “array”};
// escriba el nombre [] = elementos;

DO#:

String [] myArray = new String [5] {“this”, “is”, “my”, “first”, “array”};
// type name = new type [número de elementos] elementos;

Esto creará una matriz de 10 puntos que pueden contener valores enteros.

Algunas cosas a tener en cuenta:

privado: este es el nivel de acceso, público permitirá que cualquier clase acceda a la variable, mientras que privado mantiene la variable segura en su propia clase

int: este es el tipo de datos de la matriz, puede tener cualquier tipo de datos que elija para la matriz más común son ints, Strings, char, double y long.

arrayOfInts []: este es el nombre de la variable, puede ser el que quiera, con la excepción de palabras protegidas como “nuevo”. El [] representa una matriz.

new int [10]: esta es la declaración de la matriz, int es el tipo de datos que debe coincidir con el tipo de datos de la variable o ser compatible. El 10 es la cantidad de puntos que desea asignar a la matriz.

private int arrayOfInts [] = new int [10];