Különbség a hurok között és közben

Szerző: Laura McKinney
A Teremtés Dátuma: 2 Április 2021
Frissítés Dátuma: 4 Lehet 2024
Anonim
Különbség a hurok között és közben - Technológia
Különbség a hurok között és közben - Technológia

Tartalom


A C ++ és a Java esetében a hurok, míg a hurok és a folyamat közbeni ciklus iterációs utasításai lehetővé teszik az utasítások sorozatának többszöri végrehajtását, mindaddig, amíg a feltétel valódi és befejeződik, amint a feltétel hamis. Az iterációs utasításokban a feltételek előre definiálhatók, mint a huroknál, vagy a nyílt végű, mint a while ciklusnál.

A C ++ alkalmazásának, teljesítményének és rugalmasságának növelése érdekében számos „for” hurok variáció vonatkozik a C ++ -ra. Például a for hurok lehetővé teszi, hogy egynél több változót használjunk a hurok belsejében annak vezérlésére, valamint a konverziós funkció használatát a „for” hurokkal. Ezzel szemben, míg a loop hurokkal nem használhatunk sok variációt, amelyeket a szintaxishoz kell használni.


Van néhány nagy különbség a hurkok között és közben, és ezeket tovább magyarázzuk egy összehasonlító diagram segítségével.

  1. Összehasonlító táblázat
  2. Meghatározás
  3. Főbb különbségek
  4. Következtetés

Összehasonlító táblázat

Az összehasonlítás alapjaért,-ra,-re, mert, mivelhogy míg
Nyilatkozatfor (inicializálás; feltétel; iteráció) {
// huroktest
}
míg (feltétel) {
kimutatások; // huroktest
}
FormátumAz inicializálás, az állapot ellenőrzése, az iterációs nyilatkozat a hurok tetején van írva.Csak az inicializálás és az állapot ellenőrzése történik a hurok tetején.
HasználatA for hurkot csak akkor használták, amikor már tudtuk az iterációk számát.A while ciklust csak akkor használják, ha az iteráció száma nem pontosan ismert.
ÁllapotHa a feltételt nem adják meg a hurokhoz, akkor a hurok végtelen időket iterál.Ha a feltételt nem teszik be hurok közben, akkor fordítási hibát okoz.
inicializálásA hurokban az elvégzett inicializálás soha nem ismétlődik meg.A ciklus közben, ha az inicializálást az állapot-ellenőrzés során hajtják végre, akkor az inicializálást minden alkalommal a hurok iterálásakor meg kell tenni.
Iratációs nyilatkozatA hurok iterációjában az állítás felül van írva, tehát csak akkor kerül végrehajtásra, ha a hurokban szereplő összes utasítás végrehajtásra kerül.A while ciklusban az iterációs utasítás bárhonnan megírható.


A hurok meghatározása

A Java-ban kétféle formája van ért,-ra,-re, mert, mivelhogy hurkok. Az első forma „hagyományos”, a második pedig „mindenkinek”.

Szintaxis

A huroknyilatkozás hagyományos formája.

for (inicializálás; feltétel; iteráció) {// a hurok törzse}

  • inicializálás - A hurokvezérlő változó inicializálása csak egyszer kerül végrehajtásra, a hurok első iterációja során. Itt a hurokvezérlő változó inicializálódik, néha, ha a hurokváltozót nem használják újra a program bármelyik részében, és csak a hurok vezérlő változójaként használják, akkor mind deklarálják, mind inicializálják a „for” hurokban.
  • Állapot - A „for” hurok feltételét minden alkalommal végrehajtják, amikor a hurkot megismételik.
  • Növekedés és iteráció- Az iterációs utasítás egy kifejezés, amely növeli vagy csökkenti a hurokvezérlő változót.

Amikor a hurkot végrehajtják, először az inicializálási feltételt hajtják végre; majd ellenőrzik az állapotot. Ha a feltétel teljesül, akkor a hurok törzsét végrehajtják, majd az iterációs utasítás kerül végrehajtásra. Ezután ismét megvizsgáljuk a feltételt, hogy megtudjuk, a hurok tovább iterálódik-e, vagy véget ér-e.

A Java-ban az inicializáló utasítás és az iterációs utasítás egynél több utasítást tartalmazhat. Az egyes állításokat vessző választja el egymással, Java-ban a vessző elválasztó, míg C ++-ban a „vessző” operátor, amely bármilyen érvényes kifejezésben használható.

minden hurokra és annak szintaxisa

A „mindenkinek” forma továbbfejlesztett hurok. Az egyes hurkok általános formája a következő.

for (írja iter_variable: collection) utasítás-blokkhoz

Itt a „type” határozza meg az iterációs változó típusát, amelyet az iterációs változó követ. Az iterációs változó megkapja az elemet a gyűjtemény változótól. A típusnak meg kell egyeznie a gyűjteményváltozóban tárolt elemek típusával. A hurok mindegyik formája automatizálja a hurok iterációját, az értékek szekvenciális sorrendben való elérése kezdetétől a végéig.

Példa

Különböző típusú gyűjtők használhatók a hurokhoz. Beszéljünk egy tömbről, mint gyűjteményről.

public class main {nyilvános statikus void main (karakterláncok) {int array = {10, 20, 30, 40, 50, 60}; int add = 0; for (int c: tömb) {System.out.ln ("érték c-ben" + c); add = add + c; } System.out.ln ("a tömb elemek kiegészítése" + hozzáadása); }} // a kimeneti érték c 10 értékben c 20 értékben c 30 értékben c értékben c 40 értékben c 50 értékben c tömb elemek 60 hozzáadásakor 210

Itt a 'c' iterációs változó; az értékeket tömbből, egyenként, a tömb legalacsonyabb indexétől a legmagasabb indexéig veszi. Itt a hurok addig ismétlődik, amíg a tömb összes elemét meg nem vizsgálják. A „hurok” használatával a hurok közt megszakítható. Az iterációs változó változása azonban nem érinti a tömböt, mivel csak olvasható változó.

A while ciklus meghatározása

A míg A hurok a legalapvetőbb hurok, amely a C ++ és a Java esetében elérhető. Egy ideig tartó hurok működése hasonló a C ++ és a Java esetében is.

Szintaxis

Egy ideig tartó hurok deklarálása a következő

while (feltétel) {kijelentések; // huroktest}

A while ciklus kezdetben ellenőrzi a feltételt, majd végrehajtja az utasításokat, amíg a feltétel be nem kerül, míg a hurok igaznak bizonyul. A loop ciklusban bármilyen logikai kifejezés lehet. Ha egy kifejezés visszatér bármilyen nulla értéket, akkor a feltétel igaz, és ha a kifejezés nulla értéket ad vissza, akkor a feltétel hamis lesz.

Ha a feltétel valóra válik, akkor a hurok ismétlődik, és ha a feltétel hamis, akkor a vezérlés a kód következő sorára halad, amelyet közvetlenül a hurok követ. Az állítások vagy a test hurok lehet üres utasítás vagy egyetlen utasítás vagy mondatok blokkja.

Példa

Beszéljünk meg egy ideig tartó hurok működéséről. Az alábbi példában a kód 1-től 10-ig terjed.

// A példa Java-ban található. public class main {nyilvános statikus void main (karakterláncok) {int n = 0; míg (n <10) {n ++; System.out.ln ("n =" + n); }}} // output k = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10

Itt az 'n' kezdeti értéke 0, ami valódivá teszi az in situ ciklust. A vezérlés ezután belép a némi hurok testébe, és az 'n' értékét növelik az egy ideig tartó hurok első állításának megfelelően. Az 'n' értékét szerkesztik, majd a vezérlés egy ideig visszakerül a feltételhez, most az 'n' értéke 1, amely ismét teljesíti a feltételt, és a hurok törzse ismét végrehajtásra kerül. Ez addig folytatódik, amíg a feltétel nem teljesül, amint a feltétel hamis, a hurok megszakad.

A „for” hurokhoz hasonlóan a „while” hurok a hurok tetején is beállíthatja a vezérlő változót, azaz az állapot ellenőrzésekor.

// például amíg ((ch = getchar ()) = A) {System.out.ln ("A bemeneti ábécé" + ch); }

Itt a 'ch' vezérlőváltozót inicializálják, és a hurok állapotát a hurok tetején ellenőrzik.

Jegyzet:

Lehet, hogy van egy hurok vagy egy ideig tartó hurok, ha a hurok testében csak egy állítás van, akkor a göndör tartóknak ebben a helyzetben nincs szükségük.

  1. Ban ben ért,-ra,-re, mert, mivelhogy hurok, inicializálás, állapot-ellenőrzés, valamint az iterációs változó növelése vagy csökkentése kifejezetten a hurok szintaxisában történik. Ezzel szemben a míg hurok csak a hurok szintaxisában inicializálhatjuk és ellenőrizhetjük az állapotot.
  2. Ha tisztában vagyunk azzal, hogy hány iterációnak kell végrehajtania egy hurok végrehajtását, akkor ezt használjuk ért,-ra,-re, mert, mivelhogy hurok. Másrészt, ha nem tudjuk, hogy mennyi iterációnak kell előfordulnia egy hurokban, akkor ezt használjuk míg hurok.
  3. Ha nem tudja feltölteni a feltételt ért,-ra,-re, mert, mivelhogy hurok, ez hurok végtelen ismétléséhez vezet. Ezzel szemben, ha nem adja meg a feltételt a míg hurok fordítási hibához vezet.
  4. Az inicializálási nyilatkozat a ért,-ra,-re, mert, mivelhogy A hurok csak egyszer hajt végre a hurok elején. Fordítva, ha míg A hurok az inicializálási nyilatkozatot tartalmazza a szintaxisában, akkor a inicializáló utasítás a while ciklusban minden alkalommal végrehajtódik, a hurok ismétlődik.
  5. Az iterációs nyilatkozat a ért,-ra,-re, mert, mivelhogy A hurok akkor kerül végrehajtásra, amikor a hurok törzsét végrehajtja. Éppen ellenkezőleg, az iterációs nyilatkozat bárhol felírható a míg hurok, tehát lehet, hogy vannak utasítások, amelyek végrehajtásra kerülnek az iterációs utasítás végrehajtása után a while ciklusban.

Következtetés:

Mind a for loop, mind a loop hurok iterációs utasítás, de mindkettő megkülönböztető tulajdonsággal rendelkezik. A for huroknak minden deklarációja (inicializálás, feltétel, iteráció) a hurok testének tetején található. Ezzel ellentétben, míg a hurokban csak az inicializálás és az állapot a huroktest tetején van, és az iterációt a hurok testének bárhol fel lehet írni.