Πληροφορίες μπορούν να περαστούν σε μεθόδους ως παράμετροι. Οι παράμετροι λειτουργούν ως μεταβλητές μέσα στη μέθοδο.
Οι παράμετροι καθορίζονται μετά το όνομα της μεθόδου, μέσα στις παρενθέσεις. Μπορείτε να προσθέσετε όσους παραμέτρους θέλετε, απλώς διαχωρίστε τους με ένα κόμμα.
Στο παρακάτω παράδειγμα έχουμε μια μέθοδο που λαμβάνει ένα String με το όνομα fname ως παράμετρο. Όταν καλείται η μέθοδος, περνάμε ένα όνομα, το οποίο χρησιμοποιείται μέσα στη μέθοδο για να εκτυπώσει το πλήρες όνομα:
public class Main { static void myMethod(String fname) { System.out.println(fname + " Refsnes"); } public static void main(String[] args) { myMethod("John"); myMethod("Mike"); myMethod("Lisa"); } }
Αυτό το πρόγραμμα θα καλέσει τη μέθοδο myMethod() τρεις φορές, και σε κάθε κλήση θα δίνουμε διαφορετικό όνομα ως παράμετρο. Η μέθοδος θα εκτυπώνει το πλήρες όνομα, προσθέτοντας το επίθετο “Refsnes”. Η έξοδος του προγράμματος θα είναι:
John Refsnes Mike Refsnes Lisa Refsnes
Μπορείτε να έχετε όσα παράμετρους θέλετε στη μέθοδο:
Παράδειγμα:
public static void printFullName(String firstName, String lastName) { System.out.println(firstName + " " + lastName); }
Η παραπάνω μέθοδος παίρνει δύο παραμέτρους: το όνομα και το επώνυμο ενός ατόμου. Μόλις καλέσετε αυτή τη μέθοδο, πρέπει να περάσετε δύο συμβολοσειρές (ή αλλιώς δύο οποιαδήποτε τιμές που να είναι συμβατές με τον τύπο δεδομένων των παραμέτρων). Η μέθοδος εμφανίζει το ονοματεπώνυμο στην οθόνη με τη χρήση του τελεστή συνένωσης συμβολοσειρών (+).
Παράδειγμα κλήσης της μεθόδου:
printFullName("Γιώργος", "Παπαδόπουλος");
Αυτός ο κώδικας θα εμφανίσει το ακόλουθο κείμενο στην οθόνη:
Γιώργος Παπαδόπουλος
Το κλειδί void που χρησιμοποιήσαμε στα παραπάνω παραδείγματα υποδηλώνει ότι η μέθοδος δεν πρέπει να επιστρέψει κάποια τιμή. Αν θέλετε η μέθοδος να επιστρέψει μια τιμή, μπορείτε να χρησιμοποιήσετε ένα πρωτογενές τύπο δεδομένων (όπως int, char, κλπ.) αντί για το void και να χρησιμοποιήσετε τη λέξη επιστροφής (return) μέσα στη μέθοδο:
[adinserter block=”2″]
Στο παρακάτω παράδειγμα, δημιουργούμε μια μέθοδο addNumbers()
που παίρνει δύο ακέραιους αριθμούς ως παραμέτρους και επιστρέφει την άθροισή τους:
public class Main { public static void main(String[] args) { int x = 5; int y = 3; int sum = addNumbers(x, y); System.out.println("The sum is: " + sum); } static int addNumbers(int a, int b) { int result = a + b; return result; } }
Η έξοδος θα είναι:
The sum is: 8
Το παράδειγμα επιστρέφει το άθροισμα δύο παραμέτρων της μεθόδου:
public static int sum(int x, int y) { return x + y; }
Με αυτόν τον τρόπο, η μέθοδος sum
παίρνει δύο παράμετρους, τους αθροίζει και επιστρέφει το αποτέλεσμα. Το αποτέλεσμα μπορείτε να το εκτυπώσετε ή να το αποθηκεύσετε σε μια μεταβλητή για μελλοντική χρήση. Παραδείγματος χάρη:
public class Main { public static void main(String[] args) { int result = sum(10, 5); System.out.println(result); // Output: 15 } public static int sum(int x, int y) { return x + y; } }
Στο παραπάνω παράδειγμα, καλούμε τη μέθοδο sum
με δύο παραμέτρους και αποθηκεύουμε το αποτέλεσμα στην μεταβλητή result
. Έπειτα, εκτυπώνουμε την τιμή της μεταβλητής result
, η οποία πρέπει να είναι 15, καθώς το αποτέλεσμα του sum(10, 5)
είναι 15.
Μπορείτε επίσης να αποθηκεύσετε το αποτέλεσμα σε μια μεταβλητή (συνιστάται, καθώς είναι πιο εύκολο να διαβαστεί και να συντηρηθεί):
Παράδειγμα:
public class Main { static int sum(int x, int y) { return x + y; } public static void main(String[] args) { int result = sum(5, 10); System.out.println(result); } }
Σε αυτό το παράδειγμα, ορίζουμε μια μέθοδο sum
που παίρνει δύο παραμέτρους x
και y
και επιστρέφει το άθροισμά τους. Στη συνέχεια, καλούμε τη μέθοδο sum
στο main
και αποθηκεύουμε το αποτέλεσμα στη μεταβλητή result
. Τέλος, εκτυπώνουμε την τιμή της result
. Αυτό το πρόγραμμα θα εκτυπώσει το αποτέλεσμα 15
.
Συχνά χρησιμοποιούνται εντολές if…else μέσα σε μεθόδους στη Java. Μια μέθοδος μπορεί να ελέγξει μια συνθήκη, και να επιστρέψει διαφορετικά αποτελέσματα ανάλογα με τη συνθήκη.
Το παρακάτω παράδειγμα χρησιμοποιεί τη μέθοδο checkAge() για να ελέγξει αν κάποιος είναι άνω των 18 ετών. Η μέθοδος επιστρέφει ένα μήνυμα ανάλογα με το αποτέλεσμα του ελέγχου:
Παράδειγμα:
Σε αυτό το παράδειγμα, δημιουργούμε μια μέθοδο που δέχεται έναν ακέραιο αριθμό ως παράμετρο και επιστρέφει μια συμβολοσειρά που αντιπροσωπεύει το κατά πόσο ο αριθμός είναι άρτιος ή περιττός:
public class Main { public static void main(String[] args) { int num = 4; String result = evenOrOdd(num); System.out.println(result); } static String evenOrOdd(int num) { if (num % 2 == 0) { return "Even"; } else { return "Odd"; } } }
Το αποτέλεσμα του προγράμματος θα είναι:
Even