Pagrindinis skirtumas – ciklo ir foreach kilpai
Tiek ciklas, tiek foreach ciklas yra valdymo struktūros, naudojamos teiginių blokui kartoti. Programavime yra pasikartojimo valdymo struktūrų, leidžiančių vėl ir vėl vykdyti teiginių bloką. Viena įprasta valdymo struktūra skirta kilpai. A for ciklas yra valdymo srauto struktūra, naudojama iteracijai, leidžianti pakartotinai vykdyti kodą. Jame yra inicijavimas, bandymo išraiška ir atnaujinimo išraiška. Teiginiai, kuriuos reikia kartoti, yra įtraukti į garbanotas petnešas. Priekinė kilpa patobulinta kilpai. Tai padidina kodo skaitomumą ir jį lengva rašyti. Tiek for loop, tiek foreach ciklas naudojami teiginių rinkiniui pakartoti, tačiau sintaksė skiriasi. Pagrindinis skirtumas tarp ciklo ir foreach yra tas, kad kilpa for yra bendros paskirties valdymo struktūra, o foreach kilpa yra patobulinta fore kilpa, taikoma tik masyvams ir rinkiniams.
Kas yra ciklas?
For kilpa yra įprasta pasikartojimo struktūra. Tai padeda kartoti teiginį arba teiginių rinkinį programoje. For ciklo sintaksė yra tokia.
for(inicializacija; bandomoji išraiška; atnaujinimo išraiška){
// kodas for ciklo viduje
}
Pirmiausia įvyksta inicijavimas. Tada tikrinama testo išraiška. Jei įvertintas atsakymas yra teisingas, vykdomas kodas, esantis ciklo for. Paskutinio for ciklo sakinio pabaigoje įvertinama atnaujinimo išraiška. Tada bandomoji išraiška įvertinama dar kartą. Jei tai tiesa, vykdomas ciklas for kodas. For ciklo pabaigoje atnaujinimo išraiška dar kartą įvertinama ir patikrinama naudojant bandomąją išraišką. Šis procesas kartojamas tol, kol testo išraiška tampa klaidinga. Kai jis tampa klaidingas, for ciklas baigiasi.
01 pav. Programa su ciklu for ir foreach
Pagal pirmiau pateiktą programą, masyvas1 gali saugoti kelis sveikojo skaičiaus elementus. For cikle i yra 0. Jis yra mažesnis nei 5. Taigi 0-asis masyvo1 indekso elementas išspausdinamas. Tai skaičius 10. Tada i didėja dėl atnaujinimo išraiškos. Dabar i reikšmė yra 1. Ji mažesnė nei 5. Taigi, 1-asis masyvo1 indekso elementas išspausdinamas. Vėlgi i padidinamas. Šis procesas tęsiasi. Kai i reikšmė tampa 5, testo išraiška yra klaidinga, nes ji yra ne mažesnė nei 5. Taigi, ciklas baigiasi.
Kas yra foreach Loop?
Foreach kilpa yra patogus būdas gauti masyvo arba kolekcijos elementus. Jis gali būti naudojamas kaip alternatyva už kilpą. Jis vadinamas foreach ciklu, nes jis kartojasi per kiekvieną masyvo arba kolekcijos elementą. Foreach ciklo sintaksė yra tokia.
for(duomenų tipo elementas: rinkinys){
//kodas kiekvienos kilpos viduje
}
Kolekcija yra masyvas arba rinkinys, kuris turėtų būti kartojamas. Elementas yra vienintelis elementas iš kolekcijos. Foreach ciklas kartojasi per kiekvieną elementą ir išsaugo tą elementą kintamajame elemente. Tada įvykdo teiginius foreach ciklo viduje.
Pagal aukščiau pateiktą programą, masyvas1 saugo kelis sveikuosius skaičius. Patobulintas ciklas naudojamas kartoti masyvo elementus. Kiekvienas elementas saugomas kintamajame i ir vykdomas kodas foreach ciklo viduje. Foreach ciklas atlieka tas pačias užduotis kaip ir for ciklas, tačiau jis yra skaitomas ir lengviau rašomas. Todėl jis žinomas kaip „patobulintas ciklas“.
Koks yra for Loop ir foreach Loop panašumas?
Tiek ciklas, tiek foreach ciklas gali būti naudojami teiginių rinkiniui vykdyti kelis kartus
Kuo skiriasi for loop ir foreach kilpa?
for Loop vs foreach Loop |
|
For kilpa yra valdymo struktūra, skirta nurodyti iteraciją, leidžiančią pakartotinai vykdyti kodą. | Foreach kilpa yra valdymo struktūra, skirta masyvo arba rinkinio elementams pereiti. |
Elementas nuskaitomas | |
A for ciklas gali būti naudojamas tam tikram elementų rinkiniui gauti. | Foreach kilpa negali būti naudojama norint gauti tam tikrą elementų rinkinį. |
Įskaitomumas | |
For kilpą skaityti ir rašyti sunkiau nei foreach kilpą. | Foreach kilpą lengviau skaityti ir rašyti nei for kilpą. |
Naudojimas | |
Kilpa for naudojama kaip bendrosios paskirties kilpa. | Foreach kilpa naudojama masyvams ir rinkiniams. |
Santrauka – „Loop vs foreach Loop“
Programuojant kartais reikia pakartoti kodą. Šiai užduočiai atlikti dažniausiai naudojama for kilpa. A for ciklas yra valdymo srauto struktūra, naudojama iteracijai, leidžianti pakartotinai vykdyti kodą. Foreach kilpa patobulinta, kad būtų lengva skaityti ir rašyti. Skirtumas tarp ciklo ir foreach kilpos yra tas, kad for kilpa yra bendros paskirties valdymo struktūra, o foreach kilpa yra patobulinta ciklo forma, taikoma tik masyvams ir rinkiniams.