Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

3.4 Η δομή επανάληψης For στην Java

Στην Java, ο βρόχος for χρησιμοποιείται όταν γνωρίζετε ακριβώς πόσες φορές θέλετε να επαναλάβετε ένα μπλοκ κώδικα. Σε αντίθεση με τον βρόχο while, ο for βρόχος έχει μια συγκεκριμένη δομή συντακτικού που αποτελείται από τρία στοιχεία.

Η συντακτική δομή του for βρόχου είναι η εξής:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (statement 1; statement 2; statement 3) {
// Μπλοκ κώδικα που θα εκτελεστεί σε κάθε επανάληψη
}
for (statement 1; statement 2; statement 3) { // Μπλοκ κώδικα που θα εκτελεστεί σε κάθε επανάληψη }
for (statement 1; statement 2; statement 3) {
    // Μπλοκ κώδικα που θα εκτελεστεί σε κάθε επανάληψη
}

Τα τρία στοιχεία του βρόχου for είναι:

  1. Statement 1: Αρχικοποίηση της μεταβλητής ελέγχου
  2. Statement 2: Έλεγχος της συνθήκης επανάληψης
  3. Statement 3: Αλλαγή της τιμής της μεταβλητής ελέγχου σε κάθε επανάληψη

Παρακάτω δίνονται δύο παραδείγματα με βρόχους for σε Java:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
for (int i = 0; i < 5; i++) { System.out.println(i); }
for (int i = 0; i < 5; i++) {
    System.out.println(i);
}

Στο παραπάνω παράδειγμα, ο βρόχος for θα εκτελέσει το μπλοκ κώδικα του 5 φορές, αφού η μεταβλητή i αρχικοποιείται στο 0, έχει ως συνθήκη επανάληψης i < 5 και αυξάνεται κατά 1 σε κάθε επανάληψη.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (int i = 10; i >= 0; i -= 2) {
System.out.println(i);
}
for (int i = 10; i >= 0; i -= 2) { System.out.println(i); }
for (int i = 10; i >= 0; i -= 2) {
    System.out.println(i);
}

Στο παραπάνω παράδειγμα, ο βρόχος for θα εκτελέσει το μπλοκ κώδικα του 6 φορές, αφού η μεταβλητή i αρχικοποιείται στο 10, έχει ως συνθήκη επανάληψης i >= 0 και μειώνεται κατά 2 σε κάθε επανάληψη.

Μπορείτε επίσης να χρησιμοποιήσετε τον βρόχο for για να επαναλάβετε μια συλλογή αντικειμένων, όπως πίνακες ή λίστες. Στην περίπτωση αυτή, μπορείτε να χρησιμοποιήσετε τη μέθοδο length για να βρείτε το μέγεθος της συλλογής και να το χρησιμοποιήσετε στη συνθήκη επανάληψης του βρόχου for. Παρακάτω δίνεται ένα παράδειγμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
int[] numbers = {2, 4, 6, 8, 10};
for (int i = 0; i < numbers.length; i++) {
System.out.println(numbers[i]);
}
int[] numbers = {2, 4, 6, 8, 10}; for (int i = 0; i < numbers.length; i++) { System.out.println(numbers[i]); }
int[] numbers = {2, 4, 6, 8, 10};

for (int i = 0; i < numbers.length; i++) {
    System.out.println(numbers[i]);
}

Στο παραπάνω παράδειγμα, ο βρόχος for θα εκτυπώσει τα στοιχεία του πίνακα numbers, αφού αρχικοποιήσει τη μεταβλητή i στο 0, έχει ως συνθήκη επανάληψης i < numbers.length και αυξάνει τη μεταβλητή i κατά 1 σε κάθε επανάληψη.

[adinserter block=”2″]

Οι βρόχοι for είναι πολύ χρήσιμοι στην Java, καθώς μπορούν να μειώσουν τον κώδικα και να κάνουν τον κώδικα πιο αποδοτικό.

Αυτό το παράδειγμα θα εκτυπώσει μόνο τις άρτιες τιμές από το 0 έως το 20:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (int i = 0; i <= 20; i += 2) {
System.out.println(i);
}
for (int i = 0; i <= 20; i += 2) { System.out.println(i); }
for (int i = 0; i <= 20; i += 2) {
    System.out.println(i);
}

Στο παραπάνω παράδειγμα, ο βρόχος for θα εκτελείται μετά από την αρχικοποίηση της μεταβλητής i στο 0. Στη συνέχεια, στη συνθήκη επανάληψης, ελέγχεται αν η μεταβλητή i είναι μικρότερη ή ίση με το 20. Αν η συνθήκη είναι αληθής, τότε το μπλοκ κώδικα του βρόχου εκτελείται, στη συγκεκριμένη περίπτωση εμφανίζοντας την τρέχουσα τιμή της μεταβλητής i. Στη συνέχεια, η μεταβλητή i αυξάνεται κατά 2 σε κάθε επανάληψη, και τον επόμενο κύκλο ελέγχου της συνθήκης επανάληψης το μπλοκ κώδικα εκτελείται μόνο αν η συνθήκη είναι αληθής και η μεταβλητή i είναι ακέραιος αριθμός ζυγός.

Είναι επίσης δυνατόν να τοποθετήσετε έναν βρόχο μέσα σε έναν άλλον βρόχο. Αυτό ονομάζεται εμφωλευμένος βρόχος.

Ο “εσωτερικός βρόχος” θα εκτελείται μία φορά για κάθε επανάληψη του “εξωτερικού βρόχου”:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= 3; j++) {
System.out.println(i + " * " + j + " = " + (i*j));
}
}
for (int i = 1; i <= 5; i++) { for (int j = 1; j <= 3; j++) { System.out.println(i + " * " + j + " = " + (i*j)); } }
for (int i = 1; i <= 5; i++) {
  for (int j = 1; j <= 3; j++) {
    System.out.println(i + " * " + j + " = " + (i*j));
  }
}

Στο παραπάνω παράδειγμα, ο εξωτερικός βρόχος εκτελείται 5 φορές και ο εσωτερικός βρόχος εκτελείται 3 φορές για κάθε επανάληψη του εξωτερικού βρόχου. Εντός του εσωτερικού βρόχου εκτυπώνεται το γινόμενο των μεταβλητών i και j. Συνεπώς, το παραπάνω παράδειγμα θα εκτυπώσει τον πίνακα πολλαπλασιασμού από το 1 έως το 5, όπως παρακάτω:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 2 * 1 = 2 2 * 2 = 4 2 * 3 = 6 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 5 * 1 = 5 5 * 2 = 10 5 * 3 = 15
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15

Οι εμφωλευμένοι βρόχοι μπορούν να χρησιμοποιηθούν σε πολλά σενάρια προγραμματισμού, για παράδειγμα για να δημιουργήσετεδιδακτικά παιχνίδια, για τον υπολογισμό του μέσου όρου ενός πίνακα, για την αναζήτηση ενός στοιχείου σε μια πολύδιαστατη λίστα, και πολλά άλλα. Είναι σημαντικό να θυμάστε ότι οι εμφωλευμένοι βρόχοι μπορούν να καταναλώνουν πολλούς πόρους υπολογιστή, οπότε πρέπει να είστε προσεκτικοί στον τρόπο με τον οποίο τους χρησιμοποιείτε.

Υπάρχει επίσης ένας “for-each” βρόχος, ο οποίος χρησιμοποιείται αποκλειστικά για να επαναλαμβάνει στοιχεία σε έναν πίνακα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
for (type variableName : arrayName) {
// block of code to be executed
}
for (type variableName : arrayName) { // block of code to be executed }
for (type variableName : arrayName) {
  // block of code to be executed
}

Το παρακάτω παράδειγμα εξάγει όλα τα στοιχεία στον πίνακα gpu χρησιμοποιώντας έναν “for-each” βρόχο:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
String[] gpu = {"Nvidia", "AMD", "Intel"};
for (String i : gpu) {
System.out.println(i);
}
String[] gpu = {"Nvidia", "AMD", "Intel"}; for (String i : gpu) { System.out.println(i); }
String[] gpu = {"Nvidia", "AMD", "Intel"};

for (String i : gpu) {
  System.out.println(i);
}

Το αποτέλεσμα θα είναι η εκτύπωση των στοιχείων στον πίνακα gpu:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Nvidia
AMD
Intel
Nvidia AMD Intel
Nvidia
AMD
Intel

Ο “for-each” βρόχος είναι χρήσιμος όταν θέλετε να επαναλάβετε μέσα σε έναν πίνακα όλα τα στοιχεία ή να εξετάσετε ή να επεξεργαστείτε κάθε στοιχείο ξεχωριστά. Είναι πιο συνοπτικός και ευανάγνωστος από τον κλασικό “for” βρόχο όταν χρησιμοποιείται για τη διαχείριση ενός πίνακα.

Δωρεα μεσω Paypal

Για την κάλυψη αναγκών φιλοξενίας και δημιουργίας περιεχομένου.

κατηγοριες μαθηματων

Ιστορικο ενοτητων

top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων