herhangi biri benim için bu talimatı açıklar mısınız Nedir: Bu işaretinin (;;)Java: "(;;) için"
karşılaştığım birkaç çeşit için (gibi facebook ajax kodu ve eşzamanlı olarak Java içinde).
herhangi biri benim için bu talimatı açıklar mısınız Nedir: Bu işaretinin (;;)Java: "(;;) için"
karşılaştığım birkaç çeşit için (gibi facebook ajax kodu ve eşzamanlı olarak Java içinde).
Sonsuz bir döngü.
Bir for döngüsünün (for(x; y; z)
) üç bölümünün her biri isteğe bağlıdır.
int i = 0;
for (; i < 20; ++i)
ve tamamen geçerli, ya
for (int i = 0; i < 20;) { ++i; }
veya
for (int i = 0; ; ++i) { if (i < 20) { break; } }
ve hepsi geçerli konum:
Yani bunu yapabilirsiniz.
Ayrıca üç parçayı da for(;;)
ile çıkarabilirsiniz.
temel olarak sonsuz bir döngüdür. Sadece döngü gövdesinde ne yazıyorsa, tekrar tekrar
Başvuru için Java Dil Spesifikasyonu §14.14.1.2 http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.14.1.2 adresine bakın: "_Expression_ mevcut değilse veya mevcutsa ve değerlendirmesinden kaynaklanan değer (olası herhangi bir kutulama dahil değil), "true", sonra içerilen * Bildirim * çalıştırılır. " –
Bu yanıt," Asıl soru çok basit "politikasının asılsızlığını kanıtlıyor. :) –
Bu sonsuz bir döngüdür. for
ifadesinin açıklaması için bkz. here.
while(true)
{
...
}
, (varolmayan) çıkış koşulu olarak görülmeye yanlış olmayacak. bir çıkış durumu olmaksızın döngü için
herhangi
sonsuz olur:while (true)
olarak
for (int x=0; ; x++) { }
tamamen aynı, biraz daha az okunabilir IMHO rağmen.
Its sonsuz döngü benzer sonsuz bir döngü var
Bu gerçekten sonsuz bir döngüdür. Ancak Java'da, daha okunabilir olduğundan (muhtemelen daha önce fark ettiğiniz) while (true)
'u gerçekten for (;;)
'u tercih etmelisiniz. Derleyici yine de optimize eder. JavaScript'te, bir derleyicinin ve HTTP sayımları üzerinden her baytın hiçbir yolu yoktur, bu nedenle for (;;)
'un tercih edilmesinin nedeni budur. Birkaç karakter (bayt) kaydeder.
+1 okunabilirliği için while (true) ' – whiskeysierra
Daha kolay okunabilmesi için (;;)' için '' ı buluyorum. – jalf
döngü için sözdizimi
for (init-stmt; condition; next-stmt) {
}
Yani basitçe bir hayır ilk açıklamada, bir sonraki deyimi veya koşulu ile döngü olmasıdır. Çıkış koşulunun yokluğu onu sınırsız kılar.
#define EVER ;; (EVER) // için ... – Andrew