Console.WriteLine('Сумма равна: ' + sum);

}

}

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

Значение элемента равно: 1 Значение элемента равно: 2 Значение элемента равно: 3 Значение элемента равно: 4

Значение

элемента

равно:

5

Значение

элемента

равно:

2

Значение

элемента

равно:

4

Значение

элемента

равно:

6

Значение

элемента

равно:

8

Значение

элемента

равно:

10

Значение

элемента

равно:

3

Значение

элемента

равно:

6

Значение

элемента

равно:

9

Значение

элемента

равно:

12

Значение

элемента

равно:

15

Сумма равна: 90

Оператор foreach допускает циклическое обращение к массиву только в определенном порядке: от начала и до конца массива, поэтому его применение кажется, на первый взгляд, ограниченным. Но на самом деле это не так. В большом числе алгоритмов, самым распространенным из которых является алгоритм поиска, требуется именно такой механизм. В качестве примера ниже приведена программа, в которой цикл foreach используется для поиска в массиве определенного значения. Как только это значение будет найдено, цикл прервется.

// Поиск в массиве с помощью оператора цикла foreach.

using System;

class Search {

static void Main() {

int[] nums = new int [10]; int val;

bool found = false;

// Задать первоначальные значения элементов массива nums. for (int i = 0; i < 10; i++) nums[i] = i;

val = 5;

// Использовать цикл foreach для поиска заданного // значения в массиве nums. foreach(int х in nums) { if(x == val)    {

found = true; break;

}

}

if(found)

Console.WriteLine('Значение найдено!');

}

}

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

Значение найдено!

Оператор цикла foreach отлично подходит для такого применения, поскольку при поиске в массиве приходится анализировать каждый его элемент. К другим примерам применения оператора цикла foreach относится вычисление среднего, поиск минимального или максимального значения среди ряда заданных значений, обнаружение дубликатов и т.д. Как будет показано далее в этой книге, оператор цикла foreach оказывается особенно полезным для работы с разными типами коллекций.

Строки

С точки зрения регулярного программирования строковый тип данных string относится к числу самых важных в С#. Этот тип определяет и поддерживает символьные строки. В целом ряде других языков программирования строка представляет собой массив символов. А в C# строки являются объектами. Следовательно, тип string относится к числу ссылочных. И хотя string является встроенным в C# типом данных, его рассмотрение пришлось отложить до тех пор, пока не были представлены классы и объекты.

На самом деле класс типа string уже не раз применялся в примерах программ, начиная с главы 2, но это обстоятельство выясняется только теперь, когда очередь дошла до строк. При создании строкового литерала в действительности формируется строковый объект. Например, в следующей строке кода:

Console.WriteLine('В C# строки являются объектами.');

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату