I dette program lærer du to teknikker til at bytte to numre i Java. Den første bruger en midlertidig variabel til at bytte, mens den anden ikke bruger nogen midlertidige variabler.
For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:
- Java-datatyper (primitive)
- Java-operatører
Eksempel 1: Skift to tal ved hjælp af midlertidig variabel
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); ) )
Output :
--Før swap-- Første nummer = 1.2 Andet nummer = 2.45 --Efter swap-- Første nummer = 2.45 Andet nummer = 1.2
I ovenstående program er to tal, 1.20f
og 2.45f
som skal byttes, gemt i variabler: henholdsvis første og anden.
Variablerne udskrives, før de byttes ved hjælp af for println()
at se resultaterne tydeligt, når swapping er udført.
- For det første lagres værdien af først i variabel midlertidig (
temporary = 1.20f
). - Derefter gemmes værdien af sekund i første (
first = 2.45f
). - Og endelig er værdien af midlertidig gemt i anden (
second = 1.20f
).
Dette afslutter ombytningsprocessen, og variablerne udskrives på skærmen.
Husk, den eneste anvendelse af midlertidig er at holde værdien af først, før du bytter. Du kan også bytte numrene uden at bruge midlertidigt.
Eksempel 2: Skift to tal uden at bruge en midlertidig variabel
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); ) )
Output :
--Før swap-- Første nummer = 12.0 Andet tal = 24.5 - Efter swap-- Første nummer = 24.5 Andet tal = 12.0
I det ovenstående program bruger vi simpel matematik til at bytte numrene i stedet for at bruge en midlertidig variabel.
Opbevaring (first - second)
er vigtig for operationen . Dette lagres først i variabel.
første = første - andet; første = 12.0f - 24.5f
Derefter tilføjer vi bare andet ( 24.5f
) til dette nummer - beregnes først ( 12.0f - 24.5f
) for at bytte nummeret.
sekund = første + sekund; sekund = (12.0f - 24.5f) + 24.5f = 12.0f
Nu er det andet hold 12.0f
(som oprindeligt var værdien af det første). Så vi trækker beregnet først ( 12.0f - 24.5f
) fra byttet andet ( 12.0f
) for at få det andet byttede nummer.
første = anden - første; første = 12.0f - (12.0f - 24.5f) = 24.5f
De udskiftede numre udskrives på skærmen vha println()
.