for (odwołanie w C#)
Za pomocą for pętli, można uruchomić instrukcja lub blok instrukcji wielokrotnie aż do określonego wyrażenia false.Tego rodzaju pętli jest przydatne do iteracji tablic i dla innych aplikacji, w których wiadomo z góry ile razy chcesz iteracji pętli.
Przykład
W poniższym przykładzie wartość i jest napisane w konsoli i zwiększany o 1 podczas każdej iteracji pętli.
class ForLoopTest
{
static void Main()
{
for (int i = 1; i <= 5; i++)
{
Console.WriteLine(i);
}
}
}
/*
Output:
1
2
3
4
5
*/
for Instrukcja w poprzednim przykładzie wykonuje następujące czynności.
Po pierwsze, początkowa wartość zmiennej i jest ustanowiona.Ten krok nastąpi tylko raz, niezależnie od tego, jak wiele razy powtórzeń pętli.Ta inicjacja można traktować jako wydarzenie, poza procesem pętli.
Aby ocenić stan (i <= 5), wartość i jest w porównaniu do 5.
Jeśli i jest mniejsza lub równa 5, warunek jest true, i wykonywane są następujące akcje.
Console.WriteLine Instrukcji w treści pętli Wyświetla wartość i.
Wartość i jest zwiększana o 1.
Pętli zwraca się do rozpoczęcia kroku 2, aby ocenić stan ponownie.
Jeśli i jest większa niż 5, warunek jest false, i wyjście z pętli.
Należy zauważyć, że, jeśli początkowa wartość i jest większa niż 5, ciała pętli nie działa jeszcze raz.
Każdy for instrukcja definiuje inicjatora, stanu i sterująca sekcje.Sekcje te zazwyczaj określić liczbę iteracji pętli.
for (initializer; condition; iterator)
body
Sekcje służą do następujących celów.
Sekcja inicjator ustawia warunków początkowych.Instrukcje w tej sekcji są uruchamiane tylko raz, przed wprowadzeniem pętli.Sekcja może zawierać tylko jedną z poniższych opcji.
Deklaracja i inicjalizacja zmiennej pętli lokalnej, jak pokazano w przykładzie pierwszym (int i = 1).Zmienna jest do pętli lokalnej i nie można uzyskać dostępu z zewnątrz pętli.
Zero lub więcej expressons instrukcji z poniższej listy, oddzielonych przecinkami.
Przypisanie instrukcji
Wywołanie metody
Prefiks lub przyrostkowe przyrostu wyrażenie, takie jak ++i lubi++
Prefiks lub przyrostkowe dekrementacja wyrażenie, takie jak --i lubi--
Tworzenie obiektu za pomocą Nowy
czekają na wyrażenie
W sekcji warunku zawiera wyrażenie logiczne jest oceniana w celu ustalenia, czy należy zakończyć działanie pętli, czy należy ponownie uruchomić.
Sekcja sterująca definiuje, co się dzieje po każdej iteracji pętli ciała.Sekcja sterująca zawiera zero lub więcej z następujących wyrażeń instrukcja oddzielone przecinkami:
Przypisanie instrukcji
Wywołanie metody
Prefiks lub przyrostkowe przyrostu wyrażenie, takie jak ++i lubi++
Prefiks lub przyrostkowe dekrementacja wyrażenie, takie jak --i lubi--
Tworzenie obiektu za pomocą Nowy
czekają na wyrażenie
Ciała pętli składa się oświadczenie, puste instrukcja lub blok instrukcji, które tworzą umieszczając zero lub więcej instrukcji w nawiasach klamrowych.
Można podzielić się z for pętli za pomocą podziału słowa kluczowego lub krok do następnej iteracji za pomocą nadal słowa kluczowego.Również można wyjść żadnych pętli za pomocą goto, zwrotu, lub rzut instrukcji.
Pierwszy przykład, w tym temacie przedstawiono najbardziej typowe rodzaju for pętli, co sprawia, że następujące opcje w sekcji.
Inicjator deklaruje i inicjuje zmiennej pętli lokalnej, i, który przechowuje liczby iteracji pętli.
Warunek sprawdza wartość zmiennej pętli przeciwko znanej wartości końcowej, 5.
Sekcja sterująca używa przyrostkowe instrukcja przyrostu, i++, aby tally każdej iteracji pętli.
Poniższy przykład ilustruje kilka mniej typowe opcje: przypisywanie wartości do zmiennej zewnętrznej pętli w sekcji inicjatora, powołując się na Console.WriteLine metoda zarówno inicjator sekcje sterująca i zmieniania wartości dwóch zmiennych w sekcji sterująca.
static void Main()
{
int i;
int j = 10;
for (i = 0, Console.WriteLine("Start: {0}",i); i < j; i++, j--, Console.WriteLine("i={0}, j={1}", i, j))
{
// Body of the loop.
}
}
// Output:
// Start: 0
// i=1, j=9
// i=2, j=8
// i=3, j=7
// i=4, j=6
// i=5, j=5
Wszystkie wyrażenia, które definiują for instrukcja są opcjonalne.Na przykład poniższa instrukcja tworzy nieskończoną pętlę.
for (; ; )
{
// ...
}
Specyfikacja języka C#
Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka jest ostatecznym źródłem informacji o składni i użyciu języka C#.
Zobacz też
Informacje
Instrukcje iteracji (odwołanie w C#)
Koncepcje
Przewodnik programowania w języku C#