Σε αυτό το πρόγραμμα, θα μάθετε δύο τεχνικές για την ανταλλαγή δύο αριθμών στην Java. Η πρώτη χρησιμοποιεί μια προσωρινή μεταβλητή για ανταλλαγή, ενώ η δεύτερη δεν χρησιμοποιεί προσωρινές μεταβλητές.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:
- Τύποι δεδομένων Java (Primitive)
- Τελεστές Java
Παράδειγμα 1: Ανταλλάξτε δύο αριθμούς χρησιμοποιώντας προσωρινή μεταβλητή
public class SwapNumbers ( public static void main(String() args) ( float first = 1.20f, second = 2.45f; System.out.println("--Before swap--"); System.out.println("First number = " + first); System.out.println("Second number = " + second); // Value of first is assigned to temporary float temporary = first; // Value of second is assigned to first first = second; // Value of temporary (which contains the initial value of first) is assigned to second second = temporary; System.out.println("--After swap--"); System.out.println("First number = " + first); System.out.println("Second number = " + second); ) )
Έξοδος :
--Πριν από την ανταλλαγή - Πρώτος αριθμός = 1.2 Δεύτερος αριθμός = 2.45 - Μετά την ανταλλαγή - Πρώτος αριθμός = 2.45 Δεύτερος αριθμός = 1.2
Στο παραπάνω πρόγραμμα, δύο αριθμοί 1.20f
και 2.45f
οι οποίοι θα εναλλάσσονται αποθηκεύονται σε μεταβλητές: πρώτο και δεύτερο αντίστοιχα.
Οι μεταβλητές εκτυπώνονται πριν από την εναλλαγή χρησιμοποιώντας println()
για να δείτε τα αποτελέσματα καθαρά μετά την ανταλλαγή.
- Πρώτον, η τιμή του πρώτου αποθηκεύεται σε μεταβλητή προσωρινή (
temporary = 1.20f
). - Στη συνέχεια, η τιμή του δευτερολέπτου αποθηκεύεται στο πρώτο (
first = 2.45f
). - Και, τέλος, η τιμή του προσωρινού αποθηκεύεται στο δεύτερο (
second = 1.20f
).
Αυτό ολοκληρώνει τη διαδικασία ανταλλαγής και οι μεταβλητές εκτυπώνονται στην οθόνη.
Θυμηθείτε, η μόνη χρήση του προσωρινού είναι να κρατήσετε την τιμή του πρώτου πριν από την ανταλλαγή. Μπορείτε επίσης να αλλάξετε τους αριθμούς χωρίς να χρησιμοποιήσετε προσωρινό.
Παράδειγμα 2: Ανταλλάξτε δύο αριθμούς χωρίς να χρησιμοποιήσετε προσωρινή μεταβλητή
public class SwapNumbers ( public static void main(String() args) ( float first = 12.0f, second = 24.5f; System.out.println("--Before swap--"); System.out.println("First number = " + first); System.out.println("Second number = " + second); first = first - second; second = first + second; first = second - first; System.out.println("--After swap--"); System.out.println("First number = " + first); System.out.println("Second number = " + second); ) )
Έξοδος :
- Πριν από την ανταλλαγή - Πρώτος αριθμός = 12.0 Δεύτερος αριθμός = 24,5 - Μετά την ανταλλαγή - Πρώτος αριθμός = 24,5 Δεύτερος αριθμός = 12,0
Στο παραπάνω πρόγραμμα, αντί να χρησιμοποιούμε προσωρινή μεταβλητή, χρησιμοποιούμε απλά μαθηματικά για να ανταλλάξουμε τους αριθμούς.
Για τη λειτουργία, η αποθήκευση (first - second)
είναι σημαντική. Αυτό αποθηκεύεται πρώτα στη μεταβλητή.
πρώτο = πρώτο - δεύτερο; πρώτο = 12.0f - 24.5f
Στη συνέχεια, προσθέτουμε μόνο το δεύτερο ( 24.5f
) σε αυτόν τον αριθμό - υπολογίστηκε πρώτα ( 12.0f - 24.5f
) για να αλλάξετε τον αριθμό.
δεύτερο = πρώτο + δεύτερο; δεύτερο = (12.0f - 24.5f) + 24.5f = 12.0f
Τώρα, το δεύτερο κράτημα 12.0f
(το οποίο ήταν αρχικά αξία του πρώτου). Λοιπόν, αφαιρούμε τον υπολογισμό πρώτα ( 12.0f - 24.5f
) από τη δεύτερη ανταλλαγή ( 12.0f
) για να πάρουμε τον άλλο αριθμό ανταλλαγής.
πρώτο = δεύτερο - πρώτο; πρώτο = 12.0f - (12.0f - 24.5f) = 24.5f
Οι ανταλλαγμένοι αριθμοί εκτυπώνονται στην οθόνη χρησιμοποιώντας println()
.