Función GetUpperBound () y GetLowerBound () para la matriz

¿Alguien puede por favor decir qué hacen las dos funciones? Toman un argumento entero que se dice que es dimensión. Pero, ¿cómo cambia el valor de este entero la salida?

A continuación se muestra un ejemplo que ejecuté.

int[, ,] intMyArr = {{{ 7, 1, 3, 4 }, { 2, 9, 6, 5 } }, { { 7, 1, 3, 4 }, { 2, 9, 6, 5 }}};
Console.WriteLine(intMyArr.GetUpperBound(0));       // Output is 1
Console.WriteLine(intMyArr.GetUpperBound(1));       // Output is 1
Console.WriteLine(intMyArr.GetUpperBound(2));       // Output is 3

Console.WriteLine(intMyArr.GetLowerBound(0));       // Output is 0
Console.WriteLine(intMyArr.GetLowerBound(1));       // Output is 0
Console.WriteLine(intMyArr.GetLowerBound(2));       // Output is 0

¿Alguna idea de por qué GetLowerBound () siempre devuelve 0? Si esto siempre devuelve 0, ¿por qué necesitamos llamar a este método?

Respuestas a la pregunta(3)

Su respuesta a la pregunta