Continue return ve break kavramlari bize programlarimizi kolayliklar saglayan birer komuttur.
Özellikle döngülerin daha esnek,islevsel hale getirilip kontrol edilmelerini kolaylastirlar.
continue ifadesi döngü icerisinde kullanildigi takdirde asagisinda yer alan komutlarin yapilmadan devam edilmesini saglar.
break ifadeside islevsel olarak continue ile benzerlik göstermesine ragmen aralarinda kücük bir ayrinti farki vardir.continue kullanildigi döngüde cagrildiginda asagisindaki komutlari atlayarak döngünün basina dönerken break asagisindaki komutlari atlayarak döngünün disina cikarak program akisini devam ettirir. Yani her ikiside altinda yer alan komutlari görmezlikten gelirken continue döngünün basina break ise döngünün sonuna atlayarak devam ederler.
break'in en cok kullanildigi alan ise switch döngüsüdür.
int i;
switch(i)
{
case 1:
Console.Write("*");
break;
case 2:
case 3:
Console.Write("*");
Console.Write("*");
Console.Write("*");
break;
}
Burada break ifadesi cagrildiginda döngünün disina burada switch'in disina cikip programin devam etmesini saglar.
return ifadesi ise bir methodtan bir deger döndürülmesini olanak saglar.
Simdi bunlari birer örnekle somutlayalim.
string [] dizi={"pazartesi","sali","carsamba","persembe","cuma","cumartesi","pazar"};
string bugun = "persembe";
for(int i=0; i<7;>
{
if(dizi[i] == bugun)
{
Console.WriteLine("Bugün {0} ve haftanin {1}. günüdür",bugun,i);
break;
}
}
Bu kücük programda öncelikle icinde haftanin günlerinin yer aldigi string türünde bir dizi olusturduk.
string [] dizi={"pazartesi","sali","carsamba","persembe","cuma","cumartesi","pazar"};
for döngüsü yardimiyla dizinin tüm elemanlari if karsilastirmasiyla bugun'ün karsiligi olan persembe olup olmadigi kontrol edildi.
for(int i=0; i<7;>
{
if(dizi[i] == bugun)
{
Console.WriteLine("Bugün {0} ve haftanin {1}. günüdür",bugun,i);
break;
}
}
Haftanin 3. dizinin ise 4. günü olan persembe geldiginde if ifadesi true verip konsolda gerekli mesaj yazdirilir.
Console.WriteLine("Bugün {0} ve haftanin {1}. günüdür",bugun,i);
Hemen altinda yer alan break ifadesi ile hem if hemde for döngülerinden disariya cikilip program sonlandirilir. Bu örnekte program sonlandirildiginda i ifadesi break cagrilmadan önceki 3 degerinini aldigi gözlemlenecektir. break ifadesi cagrilmasaydi program sonunda i'nin 6 degerini aldigi görülecekti.
return anahtar kelimesini aciklamak icin bir method yazalim.
static int KacinciGun(string[] dizi, string gun)
{
int gunsayisi = -1;
for (int i = 0; i <>
{
if (dizi[i] == gun)
{
gunsayisi = i;
}
}
return gunsayisi;
}
Burada static ve ismi KacinciGun olan bir method belirliyoruz. Methodumuz parametre olarak bir dizi ve bir string aliyor. Methodumuz islevsel olarak parametre olarak aldigi string degerini yine parametre olarak aldigi dizi icinde arayarak buldugu takdirde yer aldigi index sayisini bildirmektedir. Iste burada bu döndürme isini return ifadesi yapmaktadir. Method önüne yazdigimiz int ifadesi methodumuzun sonunda int degerinde bir sayiyi döndürecegini ifade ediyor.
static int KacinciGun(string[] dizi, string gun)
Method sonunda
return gunsayisi;
ile bunu gerceklestiriyoruz. Bunu yazmadigimiz takdirde derleyicinin hatasiyla karsilasiriz. Her method bir deger döndürmek zorunda degildir. Eger bir method herhangi bir deger döndürmeyecekse basina void anahtar kelimesini alir.
static void KacinciGun(string[] dizi, string gun)
{
...
}
Dienstag, 16. Februar 2010
Abonnieren
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen