int[][] network_nodes = new int[4][]; network_nodes[0] = new int[3]; network_nodes[1] = new int[7]; network_nodes[2] = new int[2]; network_nodes[3] = new int[5];

int i, j;

// Сфабриковать данные об использовании ЦП. for(i=0; i < network_nodes.Length; i++)

for(j=0; j < network_nodes[i].Length; j++) network_nodes[i][j] = i * j + 70;

Console.WriteLine("Общее количество узлов сети: " + network_nodes.Length + "\n");

for(i=0; i < network_nodes.Length; i++)    {

for(j=0; j < network_nodes[i].Length; j++)    {

Console.Write("Использование в узле сети " + i +

" ЦП " + j + ": ");

Console.Write(network_nodes[i][j] + "% ");

Console.WriteLine ();

}

При выполнении этой программы получается следующий результат.

Общее количество узлов

сети:

: 4

Использование

в

узле

0

ЦП

0

70%

Использование

в

узле

0

ЦП

1

70%

Использование

в

узле

0

ЦП

2

70%

Использование

в

узле

1

ЦП

0

70%

Использование

в

узле

1

ЦП

1

71%

Использование

в

узле

1

ЦП

2

72%

Использование

в

узле

1

ЦП

3

73%

Использование

в

узле

1

ЦП

4

74%

Использование

в

узле

1

ЦП

5

75%

Использование

в

узле

1

ЦП

6

76%

Использование

в

узле

2

ЦП

0:

: 70%

Использование

в

узле

2

ЦП

1:

: 72%

Использование

в

узле

3

ЦП

0:

: 70%

Использование

в

узле

3

ЦП

1:

: 73%

Использование

в

узле

3

ЦП

2:

: 76%

Использование

в

узле

3

ЦП

3:

: 79%

Использование

в

узле

3

ЦП

4:

: 82%

Обратите особое внимание на то, как свойствоLengthиспользуется в ступенчатом массивеnetwork_nodes.Напомним, что двумерный ступенчатый массив представляет собой массив массивов. Следовательно, когда используется выражение

network_nodes.Length

то в нем определяется число массивов, хранящихся в массивеnetwork_nodes(в данном случае — четыре массива). А для получения длины любого отдельного массива, составляющего ступенчатый массив, служит следующее выражение.

n.etwork_nodes [0] .Length

В данном случае это длина первого массива.

Неявно типизированные массивы

Как пояснялось в главе 3, в версии C# 3.0 появилась возможность объявлять неявно типизированные переменные с помощью ключевого словаvar.Это переменные, тип которых определяется компилятором, исходя из типа инициализирующего выражения. Следовательно, все неявно типизированные переменные должны быть непременно инициализированы. Используя тот же самый механизм, можно создать и неявно типизированный массив. Как правило, неявно типизированные массивы предназначены для применения в определенного рода вызовах, включающих в себя элементы языка LINQ, о котором речь пойдет в главе 19. А в большинстве остальных случаев используется "обычное" объявление массивов. Неявно типизированйые массивы рассматриваются здесь лишь ради полноты представления о возможностях языка С#.

Перейти на страницу:

Похожие книги