1. Karşılaştırma döngüleri: for
vswhile
Bir while
döngü, bir ifadenin veya ifadeler grubunun birkaç kez gerçekleştirilmesi gereken her yerde kullanılabilir. Ancak tüm olası senaryolar arasında biri vurgulanmaya değer.
Programcının (programın yaratıcısı) döngünün kaç kez yürütülmesi gerektiğini önceden bildiği durumdan bahsediyoruz. 1
Bu genellikle özel bir sayaç değişkeni bildirerek ve ardından döngünün her yinelemesinde değişkeni artırarak (veya azaltarak) gerçekleştirilir .
Her şey olması gerektiği gibi çalışıyor gibi görünüyor, ancak pek uygun değil. Döngüden önce sayaç değişkeninin başlangıç değerini belirliyoruz. Ardından koşulda, zaten nihai değere ulaşıp ulaşmadığını kontrol ederiz. Ancak genellikle döngü gövdesinin en sonundaki değeri değiştiririz.
Peki ya ilmeğin gövdesi büyükse? Veya birkaç iç içe döngümüz varsa? Genel olarak, bu durumlarda sayaç değişkenleri hakkındaki tüm bu bilgilerin tek bir yerde toplanması tercih edilir. İşte bu yüzden for
Java'da döngümüz var. Ayrıca çok karmaşık görünmüyor:
for (statement 1; condition; statement 2)
{
block of statements
}
Bir while
döngünün parantez içinde yalnızca bir koşulu vardır, ancak bir for
döngü noktalı virgülle ayrılmış iki ifade ekler.
Gerçek göründüğünden daha basittir: derleyici bir döngüyü şu şekilde for
sıradan bir döngüye dönüştürür:while
statement 1;
while (condition)
{
block of statements
statement 2;
}
Ya da daha iyisi bunu bir örnekle gösterelim. Aşağıdaki iki kod parçacığı aynıdır.
seçenek 1 | seçenek 2 |
---|---|
|
|
Sayaç değişkenine ait tüm kodu tek bir yerde topladık i
.
Bir döngüde for
, deyim 1 , döngü başlamadan önce yalnızca bir kez yürütülür. Bu, ikinci kod parçacığında açıkça görülebilir.
deyim 2, döngü gövdesiyle aynı sayıda yürütülür ve her yürütüldüğünde, döngünün tüm gövdesi yürütüldükten sonra yürütülür.
2. for
Döngü nerede kullanılır?
Döngü for
muhtemelen Java'da en çok kullanılan döngü türüdür. Her yerde kullanılır, programcılar için bir döngüden daha net ve daha kullanışlıdır while
. Hemen hemen her while
döngü bir döngüye dönüştürülebilir for
.
Örnekler:
döngü sırasında | döngü için |
---|---|
|
|
|
|
|
|
|
|
|
|
Son örneğe dikkat edin. Döngü sayacıyla çalışmaya ilişkin ifadeler eksik. Sayaç ve açıklama yok.
Bir döngüde for
Java, "sayacı başlatmak için ifadeyi" ve "sayacı güncellemek için ifadeyi" atlamanıza izin verir. Döngü koşulunu tanımlayan ifade bile atlanabilir.
for
3. Döngü kullanmanın nüansları
for
Döngüleri ve break
ve continue
ifadeleri kullanmayla ilgili önemli bir nokta .
Döngüdeki bir break
ifade, for
döngüdeki ile aynı şekilde çalışır while
- döngüyü hemen sonlandırır. Bir continue
ifade, döngü gövdesini atlar, ancak statement 2
(döngü sayacını değiştiren) atlamaz.
for
Şimdi ve döngülerin nasıl ilişkili olduğuna bir kez daha göz atalım while
.
for (statement 1; condition; statement 2)
{
block of statements
}
statement 1;
while (condition)
{
block of statements
statement 2;
}
Bir ifade bir continue
for
döngüde yürütülürse , ifade bloğunun geri kalanı atlanır, ancak ifade 2 (döngünün sayaç değişkeniyle çalışan for
) yine de yürütülür.
7 ile bölünebilen sayıları atladığımız örneğimize dönelim.
Bu kod sonsuza kadar döngüye girecek | Bu kod iyi çalışacak |
---|---|
|
|
Döngüyü kullanan kod while
çalışmaz — i asla 7'den büyük olmaz. Ancak döngülü kod for
düzgün çalışır.
4. Döngüler için karşılaştırma: Java ve Pascal
Bu arada, Pascal'ın da bir For
döngüsü var. Genel olarak, esasen her programlama dilinde bir tane vardır. Ancak Pascal'da bu çok açık. Örnekler:
Pascal | java |
---|---|
|
|
|
|
|
|
GO TO FULL VERSION