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.

4.2 Παράμετροι συναρτήσεων στην Java

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

Η δήλωση των παραμέτρων γίνεται μετά το όνομα της μεθόδου, μέσα σε παρενθέσεις. Μπορούμε να προσθέσουμε όσους παραμέτρους επιθυμούμε, αρκεί να τους διαχωρίσουμε με κόμμα.

Στο παρακάτω παράδειγμα ορίζεται μια μέθοδος με το όνομα “printFullName”, η οποία δέχεται ένα String ως παράμετρο με το όνομα “fname”. Όταν καλείται η μέθοδος, περνάμε ένα όνομα σαν όρισμα, το οποίο χρησιμοποιείται εντός της μεθόδου για να εκτυπώσει το πλήρες όνομα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
public class Main {
// Ορισμός μιας μεθόδου με την ονομασία myMethod που δέχεται ένα παράμετρο fname τύπου String
static void myMethod(String fname) {
System.out.println(fname + " Refsnes"); // Εκτύπωση του ονόματος με την προσθήκη του επωνύμου "Refsnes"
}
public static void main(String[] args) {
myMethod("John"); // Κλήση της μεθόδου myMethod με την παράμετρο "John"
myMethod("Mike"); // Κλήση της μεθόδου myMethod με την παράμετρο "Mike"
myMethod("Lisa"); // Κλήση της μεθόδου myMethod με την παράμετρο "Lisa"
}
}
public class Main { // Ορισμός μιας μεθόδου με την ονομασία myMethod που δέχεται ένα παράμετρο fname τύπου String static void myMethod(String fname) { System.out.println(fname + " Refsnes"); // Εκτύπωση του ονόματος με την προσθήκη του επωνύμου "Refsnes" } public static void main(String[] args) { myMethod("John"); // Κλήση της μεθόδου myMethod με την παράμετρο "John" myMethod("Mike"); // Κλήση της μεθόδου myMethod με την παράμετρο "Mike" myMethod("Lisa"); // Κλήση της μεθόδου myMethod με την παράμετρο "Lisa" } }
public class Main {
  // Ορισμός μιας μεθόδου με την ονομασία myMethod που δέχεται ένα παράμετρο fname τύπου String
  static void myMethod(String fname) {
    System.out.println(fname + " Refsnes"); // Εκτύπωση του ονόματος με την προσθήκη του επωνύμου "Refsnes"
  }

  public static void main(String[] args) {
    myMethod("John"); // Κλήση της μεθόδου myMethod με την παράμετρο "John"
    myMethod("Mike"); // Κλήση της μεθόδου myMethod με την παράμετρο "Mike"
    myMethod("Lisa"); // Κλήση της μεθόδου myMethod με την παράμετρο "Lisa"
  }
}

Ο παραπάνω κώδικας περιλαμβάνει μια κλάση με την ονομασία “Main”. Ο κώδικας περιέχει δύο μεθόδους, την myMethod και την main.

Η μέθοδος myMethod είναι μια στατική (static) μέθοδος που δέχεται ένα παράμετρο fname τύπου String. Εντός αυτής της μεθόδου, εκτυπώνεται η συνένωση του fname με το κείμενο “Refsnes”.

Η μέθοδος main είναι η εισαγωγική σημείωση (entry point) του προγράμματος. Εκτελείται όταν το πρόγραμμα ξεκινάει και είναι αυτή που καλείται πρώτη. Μέσα στην main, καλείται η myMethod τρεις φορές με διαφορετικές παραμέτρους: “John”, “Mike” και “Lisa”. Κατά την εκτέλεση, η myMethod εκτυπώνει την συνένωση της παραμέτρου με το “Refsnes” για κάθε κλήση.

Συνολικά, ο κώδικας εκτυπώνει τα ονόματα “John Refsnes”, “Mike Refsnes” και “Lisa Refsnes” στην οθόνη.

Μπορείτε να έχετε όσες παραμέτρους θέλετε στη μέθοδο.

Παράδειγμα:

Ας υποθέσουμε ότι θέλουμε να ορίσουμε μια μέθοδο με όνομα “calculateSum”, η οποία θα υπολογίζει το άθροισμα δύο αριθμών. Μπορούμε να τη δηλώσουμε με τις παραμέτρους “num1” και “num2”, οι οποίες θα είναι τύπου int. Ο κώδικας θα μπορούσε να είναι ως εξής:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
public class Main {
// Μέθοδος για τον υπολογισμό του αθροίσματος δύο αριθμών
static int calculateSum(int num1, int num2) {
int sum = num1 + num2;
return sum;
}
public static void main(String[] args) {
// Κλήση της μεθόδου calculateSum() και αποθήκευση του αποτελέσματος στη μεταβλητή result
int result = calculateSum(5, 3);
// Εκτύπωση του αποτελέσματος
System.out.println("Το άθροισμα είναι: " + result);
}
}
public class Main { // Μέθοδος για τον υπολογισμό του αθροίσματος δύο αριθμών static int calculateSum(int num1, int num2) { int sum = num1 + num2; return sum; } public static void main(String[] args) { // Κλήση της μεθόδου calculateSum() και αποθήκευση του αποτελέσματος στη μεταβλητή result int result = calculateSum(5, 3); // Εκτύπωση του αποτελέσματος System.out.println("Το άθροισμα είναι: " + result); } }
public class Main {
  // Μέθοδος για τον υπολογισμό του αθροίσματος δύο αριθμών
  static int calculateSum(int num1, int num2) {
    int sum = num1 + num2;
    return sum;
  }

  public static void main(String[] args) {
    // Κλήση της μεθόδου calculateSum() και αποθήκευση του αποτελέσματος στη μεταβλητή result
    int result = calculateSum(5, 3);
    
    // Εκτύπωση του αποτελέσματος
    System.out.println("Το άθροισμα είναι: " + result);
  }
}

Ο παραπάνω κώδικας περιέχει μια απλή Java κλάση με δύο μεθόδους: την calculateSum και την main.

[adinserter block=”2″]

Η μέθοδος calculateSum δέχεται δύο ακέραιους αριθμούς (num1 και num2) και υπολογίζει το άθροισμά τους. Το αποτέλεσμα αποθηκεύεται στην τοπική μεταβλητή sum και στη συνέχεια επιστρέφεται από τη μέθοδο.

Η μέθοδος main είναι η κύρια μέθοδος εκκίνησης του προγράμματος. Εντός αυτής της μεθόδου, καλείται η calculateSum με τις τιμές 5 και 3 και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result. Έπειτα, το αποτέλεσμα εκτυπώνεται στην οθόνη μέσω της μεθόδου System.out.println, που εμφανίζει το κείμενο “Το άθροισμα είναι: ” ακολουθούμενο από την τιμή της μεταβλητής result.

Συνολικά, ο κώδικας υπολογίζει το άθροισμα των αριθμών 5 και 3 και εμφανίζει το αποτέλεσμα στην οθόνη. Στην περίπτωση αυτή, το αποτέλεσμα που θα εκτυπωθεί είναι “Το άθροισμα είναι: 8”.

Το void είναι ένα κλειδί δεδομένων που χρησιμοποιείται για να υποδηλώσει ότι μια μέθοδος δεν επιστρέφει κάποια τιμή. Αν θέλετε να επιστρέψετε μια τιμή από μια μέθοδο, μπορείτε να χρησιμοποιήσετε έναν πρωτογενή τύπο δεδομένων (όπως int, char, κλπ.) αντί για το void και να χρησιμοποιήσετε την εντολή return εντός της μεθόδου για να επιστρέψετε την τιμή.

Για παράδειγμα, αν θέλαμε να γράψουμε μια μέθοδο που να υπολογίζει το άθροισμα δύο αριθμών και να επιστρέφει το αποτέλεσμα, θα μπορούσαμε να ορίσουμε τη μέθοδο ως εξής:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
// Ορισμός μιας στατικής μεθόδου με όνομα calculateSum, η οποία δέχεται δύο ακέραιες παραμέτρους num1 και num2
static int calculateSum(int num1, int num2) {
// Δημιουργία μιας μεταβλητής sum και αποθήκευση του αθροίσματος των δύο αριθμών
int sum = num1 + num2;
// Επιστροφή του αθροίσματος
return sum;
}
// Ορισμός μιας στατικής μεθόδου με όνομα calculateSum, η οποία δέχεται δύο ακέραιες παραμέτρους num1 και num2 static int calculateSum(int num1, int num2) { // Δημιουργία μιας μεταβλητής sum και αποθήκευση του αθροίσματος των δύο αριθμών int sum = num1 + num2; // Επιστροφή του αθροίσματος return sum; }
// Ορισμός μιας στατικής μεθόδου με όνομα calculateSum, η οποία δέχεται δύο ακέραιες παραμέτρους num1 και num2
static int calculateSum(int num1, int num2) {
  // Δημιουργία μιας μεταβλητής sum και αποθήκευση του αθροίσματος των δύο αριθμών
  int sum = num1 + num2;
  
  // Επιστροφή του αθροίσματος
  return sum;
}

Η χρήση του int ως τύπου δεδομένων υποδηλώνει ότι η μέθοδος αναμένεται να επιστρέψει έναν ακέραιο αριθμό. Στο εσωτερικό της μεθόδου, υπολογίζεται το άθροισμα των δύο αριθμών και στη συνέχεια χρησιμοποιείται η εντολή return για να επιστραφεί η τιμή του sum.

Με αυτόν τον τρόπο, η μέθοδος calculateSum μπορεί να χρησιμοποιηθεί όπως στο προη

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

Στο παρακάτω παράδειγμα, δημιουργούμε μια μέθοδο addNumbers() που παίρνει δύο ακέραιους αριθμούς ως παραμέτρους και επιστρέφει την άθροισή τους:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
public class Main {
public static void main(String[] args) {
// Δημιουργία δύο μεταβλητών x και y με τιμές 5 και 3 αντίστοιχα
int x = 5;
int y = 3;
// Κλήση της μεθόδου addNumbers() με τις μεταβλητές x και y και αποθήκευση του αποτελέσματος στη μεταβλητή sum
int sum = addNumbers(x, y);
// Εκτύπωση του μηνύματος "The sum is: " ακολουθούμενο από την τιμή της μεταβλητής sum
System.out.println("The sum is: " + sum);
}
// Ορισμός της μεθόδου addNumbers() που παίρνει δύο παραμέτρους a και b τύπου int
static int addNumbers(int a, int b) {
// Προσθήκη των δύο αριθμών και αποθήκευση του αποτελέσματος στη μεταβλητή result
int result = a + b;
// Επιστροφή της μεταβλητής result
return result;
}
}
public class Main { public static void main(String[] args) { // Δημιουργία δύο μεταβλητών x και y με τιμές 5 και 3 αντίστοιχα int x = 5; int y = 3; // Κλήση της μεθόδου addNumbers() με τις μεταβλητές x και y και αποθήκευση του αποτελέσματος στη μεταβλητή sum int sum = addNumbers(x, y); // Εκτύπωση του μηνύματος "The sum is: " ακολουθούμενο από την τιμή της μεταβλητής sum System.out.println("The sum is: " + sum); } // Ορισμός της μεθόδου addNumbers() που παίρνει δύο παραμέτρους a και b τύπου int static int addNumbers(int a, int b) { // Προσθήκη των δύο αριθμών και αποθήκευση του αποτελέσματος στη μεταβλητή result int result = a + b; // Επιστροφή της μεταβλητής result return result; } }
public class Main {
  public static void main(String[] args) {
    // Δημιουργία δύο μεταβλητών x και y με τιμές 5 και 3 αντίστοιχα
    int x = 5;
    int y = 3;

    // Κλήση της μεθόδου addNumbers() με τις μεταβλητές x και y και αποθήκευση του αποτελέσματος στη μεταβλητή sum
    int sum = addNumbers(x, y);

    // Εκτύπωση του μηνύματος "The sum is: " ακολουθούμενο από την τιμή της μεταβλητής sum
    System.out.println("The sum is: " + sum);
  }

  // Ορισμός της μεθόδου addNumbers() που παίρνει δύο παραμέτρους a και b τύπου int
  static int addNumbers(int a, int b) {
    // Προσθήκη των δύο αριθμών και αποθήκευση του αποτελέσματος στη μεταβλητή result
    int result = a + b;
    // Επιστροφή της μεταβλητής result
    return result;
  }
}

Ο παραπάνω κώδικας πραγματοποιεί την ακόλουθη λειτουργία:

  1. Δημιουργεί δύο μεταβλητές x και y με τιμές 5 και 3 αντίστοιχα.
  2. Καλεί τη στατική μέθοδο addNumbers() και περνά τις μεταβλητές x και y ως παράμετροι.
  3. Η μέθοδος addNumbers() πραγματοποιεί την πρόσθεση των δύο παραμέτρων και αποθηκεύει το αποτέλεσμα στη μεταβλητή result.
  4. Η μέθοδος addNumbers() επιστρέφει την τιμή της μεταβλητής result.
  5. Η τιμή που επιστράφηκε από τη μέθοδο addNumbers() αποθηκεύεται στη μεταβλητή sum.
  6. Εκτυπώνεται το μήνυμα “The sum is: ” ακολουθούμενο από την τιμή της μεταβλητής sum.

Συνολικά, ο κώδικας υπολογίζει το άθροισμα των δύο αριθμών x και y και το εμφανίζει στην οθόνη με το μήνυμα “The sum is: ” πριν από το αποτέλεσμα. Στη συγκεκριμένη περίπτωση, το αποτέλεσμα θα είναι “The sum is: 8”.

Το αποτέλεσμα μπορείτε να το εκτυπώσετε ή να το αποθηκεύσετε σε μια μεταβλητή για μελλοντική χρήση.

Παραδείγμα:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
public class Main {
public static void main(String[] args) {
// Καλούμε την μέθοδο sum και αποθηκεύουμε το αποτέλεσμα στη μεταβλητή result
int result = sum(10, 5);
// Εκτυπώνουμε το αποτέλεσμα
System.out.println(result);
}
// Ορίζουμε τη μέθοδο sum που πραγματοποιεί την πρόσθεση δύο αριθμών
public static int sum(int x, int y) {
// Επιστρέφουμε το άθροισμα των δύο αριθμών
return x + y;
}
}
public class Main { public static void main(String[] args) { // Καλούμε την μέθοδο sum και αποθηκεύουμε το αποτέλεσμα στη μεταβλητή result int result = sum(10, 5); // Εκτυπώνουμε το αποτέλεσμα System.out.println(result); } // Ορίζουμε τη μέθοδο sum που πραγματοποιεί την πρόσθεση δύο αριθμών public static int sum(int x, int y) { // Επιστρέφουμε το άθροισμα των δύο αριθμών return x + y; } }
public class Main {
  public static void main(String[] args) {
    // Καλούμε την μέθοδο sum και αποθηκεύουμε το αποτέλεσμα στη μεταβλητή result
    int result = sum(10, 5);
    // Εκτυπώνουμε το αποτέλεσμα
    System.out.println(result); 
  }

  // Ορίζουμε τη μέθοδο sum που πραγματοποιεί την πρόσθεση δύο αριθμών
  public static int sum(int x, int y) {
    // Επιστρέφουμε το άθροισμα των δύο αριθμών
    return x + y;
  }
}

Ο παραπάνω κώδικας πραγματοποιεί την εξής λειτουργία:

  1. Ορίζεται η κλάση Main.
  2. Στην κύρια μέθοδο main, καλείται η μέθοδος sum με τις παραμέτρους 10 και 5 και το αποτέλεσμα αποθηκεύεται στη μεταβλητή result.
  3. Στη συνέχεια, το αποτέλεσμα εκτυπώνεται στην οθόνη με τη χρήση της System.out.println(), προκειμένου να εμφανιστεί στο παράθυρο της κονσόλας.
  4. Τέλος, ορίζεται η μέθοδος sum, η οποία δέχεται δύο ακέραιες παραμέτρους (x και y) και επιστρέφει το άθροισμά τους.

[adinserter block=”3″]

Συνολικά, ο κώδικας υπολογίζει το άθροισμα των δύο αριθμών (10 και 5) και το εμφανίζει στην οθόνη. Στην προκειμένη περίπτωση, το αποτέλεσμα που θα εμφανιστεί είναι 15.

Συχνά, στην Java, χρησιμοποιούνται εντολές if…else μέσα σε μεθόδους. Μια μέθοδος μπορεί να ελέγξει μια συνθήκη και να επιστρέψει διαφορετικά αποτελέσματα ανάλογα με την συνθήκη που ελέγχεται.

Παράδειγμα:

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

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
public class Main {
public static void main(String[] args) {
int num = 4; // Δημιουργία μεταβλητής num και ανάθεση της τιμής 4
String result = evenOrOdd(num); // Κλήση της μεθόδου evenOrOdd() και αποθήκευση του αποτελέσματος στη μεταβλητή result
System.out.println(result); // Εκτύπωση του αποτελέσματος στην οθόνη
}
static String evenOrOdd(int num) {
if (num % 2 == 0) { // Έλεγχος εάν το num είναι ζυγός (έχει υπόλοιπο 0 κατά τη διαίρεση με το 2)
return "Even"; // Επιστροφή του μηνύματος "Even" αν το num είναι ζυγός
} else {
return "Odd"; // Επιστροφή του μηνύματος "Odd" αν το num είναι μονός
}
}
}
public class Main { public static void main(String[] args) { int num = 4; // Δημιουργία μεταβλητής num και ανάθεση της τιμής 4 String result = evenOrOdd(num); // Κλήση της μεθόδου evenOrOdd() και αποθήκευση του αποτελέσματος στη μεταβλητή result System.out.println(result); // Εκτύπωση του αποτελέσματος στην οθόνη } static String evenOrOdd(int num) { if (num % 2 == 0) { // Έλεγχος εάν το num είναι ζυγός (έχει υπόλοιπο 0 κατά τη διαίρεση με το 2) return "Even"; // Επιστροφή του μηνύματος "Even" αν το num είναι ζυγός } else { return "Odd"; // Επιστροφή του μηνύματος "Odd" αν το num είναι μονός } } }
public class Main {
  public static void main(String[] args) {
    int num = 4; // Δημιουργία μεταβλητής num και ανάθεση της τιμής 4
    String result = evenOrOdd(num); // Κλήση της μεθόδου evenOrOdd() και αποθήκευση του αποτελέσματος στη μεταβλητή result
    System.out.println(result); // Εκτύπωση του αποτελέσματος στην οθόνη
  }

  static String evenOrOdd(int num) {
    if (num % 2 == 0) { // Έλεγχος εάν το num είναι ζυγός (έχει υπόλοιπο 0 κατά τη διαίρεση με το 2)
      return "Even"; // Επιστροφή του μηνύματος "Even" αν το num είναι ζυγός
    } else {
      return "Odd"; // Επιστροφή του μηνύματος "Odd" αν το num είναι μονός
    }
  }
}

Ο παραπάνω κώδικας εκτελεί μια απλή λειτουργία για τον έλεγχο εάν ένας αριθμός είναι ζυγός ή μονός.

Αρχικά, ορίζεται η κλάση Main. Μέσα σε αυτήν, υπάρχει η main μέθοδος που είναι η εκκίνηση του προγράμματος. Μέσα στη main μέθοδο, δηλώνεται μια μεταβλητή num με τιμή 4.

Στη συνέχεια, καλείται η μέθοδος evenOrOdd(num), περνώντας την τιμή της μεταβλητής num ως όρισμα. Η μέθοδος evenOrOdd ελέγχει εάν ο αριθμός που δίνεται ως όρισμα είναι ζυγός ή μονός. Εάν είναι ζυγός (το υπόλοιπο της διαίρεσης με το 2 είναι 0), τότε επιστρέφεται το αλφαριθμητικό "Even", διαφορετικά επιστρέφεται το αλφαριθμητικό "Odd".

Η επιστρεφόμενη τιμή από τη μέθοδο evenOrOdd αποθηκεύεται στη μεταβλητή result. Τέλος, με τη χρήση της System.out.println(result), το αποτέλεσμα εκτυπώνεται στην οθόνη.

Συνολικά, ο κώδικας εκτυπώνει στην οθόνη το αποτέλεσμα που δηλώνει εάν ο αριθμός num είναι ζυγός ή μονός (π.χ., “Even” ή “Odd” αντίστοιχα).

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

Αν η τιμή της num είναι 4, το αποτέλεσμα που θα εμφανιστεί στην οθόνη θα είναι:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Even
Even
Even

Αντίθετα, αν η τιμή της num είναι οποιοδήποτε άλλος αριθμός πέραν του 4, το αποτέλεσμα θα είναι:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Odd
Odd
Odd

Το αποτέλεσμα είναι αποτέλεσμα της λειτουργίας της μεθόδου evenOrOdd, η οποία επιστρέφει την αντίστοιχη αλφαριθμητική τιμή ανάλογα με το εάν ο αριθμός είναι ζυγός ή μονός. Το αποτέλεσμα εμφανίζεται στην οθόνη με τη χρήση της System.out.println(result).

13 Ιουνίου, 2023
top
error: Content is protected !!
Μετάβαση σε γραμμή εργαλείων