În acest program, veți învăța două tehnici pentru a schimba două numere în Java. Prima folosește o variabilă temporară pentru schimb, în timp ce a doua nu folosește nicio variabilă temporară.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele despre următoarele subiecte de programare Java:
- Tipuri de date Java (Primitive)
- Operatori Java
Exemplul 1: Schimbați două numere utilizând variabila temporară
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); ) )
Ieșire :
- Înainte de swap - Primul număr = 1,2 Al doilea număr = 2,45 - După swap - Primul număr = 2,45 Al doilea număr = 1,2
În programul de mai sus, două numere 1.20f
și 2.45f
care urmează să fie schimbate sunt stocate în variabile: primul și respectiv al doilea.
Variabilele sunt tipărite înainte de swap folosind println()
pentru a vedea clar rezultatele după efectuarea swapului.
- În primul rând, valoarea primului este stocată în variabila temporară (
temporary = 1.20f
). - Apoi, valoarea secundei este stocată în primul (
first = 2.45f
). - Și, în cele din urmă, valoarea temporară este stocată în second (
second = 1.20f
).
Aceasta finalizează procesul de schimbare și variabilele sunt tipărite pe ecran.
Amintiți-vă, singura utilizare a temporarului este să păstrați valoarea primului înainte de a schimba. De asemenea, puteți schimba numerele fără a utiliza temporar.
Exemplul 2: Schimbați două numere fără a utiliza variabila temporară
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); ) )
Ieșire :
- Înainte de swap - Primul număr = 12,0 Al doilea număr = 24,5 - După swap - Primul număr = 24,5 Al doilea număr = 12,0
În programul de mai sus, în loc să folosim variabila temporară, folosim matematica simplă pentru a schimba numerele.
Pentru operație, depozitarea (first - second)
este importantă. Aceasta este stocată mai întâi în variabilă.
first = first - second; primul = 12,0f - 24,5f
Apoi, adăugăm doar al doilea ( 24.5f
) la acest număr - calculat primul ( 12.0f - 24.5f
) pentru a schimba numărul.
al doilea = primul + al doilea; a doua = (12.0f - 24.5f) + 24.5f = 12.0f
Acum, a doua deține 12.0f
(care a fost inițial valoarea primului). Deci, scădem calculat first ( 12.0f - 24.5f
) din swapped second ( 12.0f
) pentru a obține celălalt număr swapped.
primul = al doilea - primul; primul = 12,0f - (12,0f - 24,5f) = 24,5f
Numerele schimbate sunt imprimate pe ecran folosind println()
.