Hytale Modding
Java Pamati

04 - Plūsmas Kontrole ar Cikliem

Iemācies efektīvi atkārtot kodu, izmantojot ciklus Javā

Cikli (loop) ļauj atkārtot kodu bez atkārtotas koda rakstīšanas Tie ir būtiski kolekciju apstrādei, pasaules ģenerēšanai un spēļu objektu atjaunināšanai.

Kamēr Cikls

Atkārto kodu kamēr (while) nosacījumi ir spēkā:

int atskaite = 5;

while (atskaite > 0) {
    System.out.println(atskaite);
    atskaite--;
}
System.out.println("Sprādziens!");

Struktūra

while (nosacījums) {
    // kods atkārtojas
}
Bezgalīgi Cikli

Vienmēr pārliecinies, ka cikla stāvoklis galu galā kļūs nepatiess, savādāk programma darbosies mūžīgi!

int x = 0;
while (x < 10) {
    System.out.println("Bezgalīgi atkārtojas!");
    // Aizmirsām palielināt x!
}

Darīt-Kamēr Cikls

Līdzinās While Loop, bet vienmēr nostrādā vismaz vienu reizi:

int veseliba = 0;

do {
    System.out.println("Mēģinam atzīvoties...");
    health = 100;
} while (veseliba <= 0);

Priekš Cilpa

Vislabāk pielieto priekš (For) cikla, ja zināms, cik reižu atkārtot:

for (int i = 1; i <= 5; i++) {
    System.out.println("Līmenis " + i);
}

Struktūra

for (uzsākšana; nosacījumi; jauninājums) {
    // kods atkārtojas
}
For Loop Daļas
for (int i = 0; i < 10; i++) {
//   ^         ^        ^
//   Start     Stop     Solis
}
  • Uzsākšana: int i = 0 - Nostrādā tikai pirmo reizi
  • Nosacījumi: i < 10 - Pārbaudi pirms katra cikla
  • Jauninājums: i++ - Nostrādā katru reizi pēc cikla

Izlaušanās Nosacījums

Tu vari iziet no cikla agrāk ar break:

for (int i = 1; i <= 10; i++) {
    if (i == 6) {
        break; // Iziet no cikla, kad i ir 6
    }
    System.out.println(i);
}

Turpinājuma Nosacījums

Izlaid uz nākamo iterāciju ar continue:

for (int i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
        continue; // Izlaid pāra skaitļus
    }
    System.out.println(i); // Printē tikai nepāra skaitļus
}

Mitināti Cikli

Ciklus var ievietot iekš cikliem:

for (int i = 1; i <= 3; i++) {
    for (int j = 1; j <= 2; j++) {
        System.out.println("i: " + i + ", j: " + j);
    }
}
Mitinātu Ciklu Veiktspēja

Uzmanies ar iemitānitem cikliem! Tie var smagi palēnināt tavu mod.

// Šis atkārtosies 1,000,000 reizes!
for (int i = 0; i < 1000; i++) {
    for (int j = 0; j < 1000; j++) {
        // Kods
    }
}

Mēģini izvairīties no dziļi iemitinātiem cikliem strādājot ar lielu datu daudzumu.