W tym programie nauczysz się dwóch technik zamiany dwóch liczb w Javie. Pierwsza wykorzystuje zmienną tymczasową do zamiany, a druga nie używa żadnych zmiennych tymczasowych.
Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:
- Typy danych Java (prymitywne)
- Operatory Java
Przykład 1: Zamień dwie liczby za pomocą zmiennej tymczasowej
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); ) )
Wyjście :
--Przed zamianą - Pierwsza liczba = 1,2 Druga liczba = 2,45 - Po zamianie - Pierwsza liczba = 2,45 Druga liczba = 1,2
W powyższym programie dwie liczby 1.20f
i 2.45f
które mają być zamienione są przechowywane w zmiennych: odpowiednio: pierwsza i druga.
Zmienne są drukowane przed zamianą za pomocą, println()
aby wyraźnie zobaczyć wyniki po dokonaniu zamiany.
- Po pierwsze, wartość first jest przechowywana w zmiennej tymczasowej (
temporary = 1.20f
). - Następnie wartość sekundy jest przechowywana w first (
first = 2.45f
). - I wreszcie wartość tymczasowa jest przechowywana w second (
second = 1.20f
).
Na tym kończy się proces zamiany, a zmienne są drukowane na ekranie.
Pamiętaj, że jedynym zastosowaniem tymczasowego jest zatrzymanie wartości pierwszego przed zamianą. Możesz także zamienić numery bez użycia tymczasowego.
Przykład 2: Zamień dwie liczby bez użycia zmiennej tymczasowej
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); ) )
Wyjście :
--Przed zamianą - Pierwsza liczba = 12,0 Druga liczba = 24,5 - Po zamianie - Pierwsza liczba = 24,5 Druga liczba = 12,0
W powyższym programie zamiast używać zmiennej tymczasowej, używamy prostej matematyki do zamiany liczb.
Podczas operacji (first - second)
ważne jest przechowywanie . Jest to najpierw przechowywane w zmiennej.
pierwszy = pierwszy - drugi; pierwszy = 12,0f - 24,5f
Następnie dodajemy tylko sekundę ( 24.5f
) do tej liczby - obliczamy najpierw ( 12.0f - 24.5f
), aby zamienić liczbę.
druga = pierwsza + druga; sekunda = (12,0f - 24,5f) + 24,5f = 12,0f
Teraz druga trzyma 12.0f
(która początkowo była wartością pierwszego). Tak więc odejmujemy obliczoną pierwszą ( 12.0f - 24.5f
) od zamienionej drugiej ( 12.0f
), aby otrzymać drugą zamienioną liczbę.
pierwszy = drugi - pierwszy; pierwsza = 12,0f - (12,0f - 24,5f) = 24,5f
Zamienione liczby są drukowane na ekranie za pomocą println()
.