Šioje programoje išmoksite dviejų būdų, kaip sukeisti du skaičius „Java“. Pirmasis keičia laikinąjį kintamąjį, o antrasis nenaudoja jokių laikinų kintamųjų.
Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:
- „Java“ duomenų tipai (primityvūs)
- „Java“ operatoriai
1 pavyzdys: pakeiskite du skaičius naudodami laikiną kintamąjį
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); ) )
Išvestis :
- Prieš apsikeitimą - Pirmasis skaičius = 1,2 Antras skaičius = 2,45 - Po apsikeitimo - Pirmasis skaičius = 2,45 Antrasis skaičius = 1,2
Pirmiau pateiktoje programoje du skaičiai 1.20f
, 2.45f
kuriuos reikia sukeisti, saugomi kintamuosiuose: atitinkamai pirmasis ir antrasis.
Kintamieji spausdinami prieš keičiant, println()
kad rezultatai būtų aiškiai matomi atlikus keitimą.
- Pirma, pirmojo reikšmė saugoma kintamajame laikinas (
temporary = 1.20f
). - Tada sekundės vertė įrašoma į pirmąją (
first = 2.45f
). - Ir, pagaliau, laikinos vertės vertė išsaugoma sekundėje (
second = 1.20f
).
Tai užbaigia keitimo procesą ir kintamieji spausdinami ekrane.
Atminkite, kad vienintelis laikinas būdas yra išlaikyti pirmojo reikšmę prieš keičiant. Taip pat galite pakeisti numerius nenaudodami laikino.
2 pavyzdys: pakeiskite du skaičius nenaudodami laikino kintamojo
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); ) )
Išvestis :
- Prieš apsikeitimą - Pirmasis skaičius = 12,0 Antrasis skaičius = 24,5 - Po apsikeitimo - Pirmasis skaičius = 24,5 Antrasis skaičius = 12,0
Ankstesnėje programoje vietoj to, kad naudotume laikiną kintamąjį, skaičiams sukeisti naudojame paprastą matematiką.
Operacijai (first - second)
svarbu laikyti . Pirmiausia tai saugoma kintamajame.
pirmas = pirmas - antras; pirmas = 12,0f - 24,5f
Tada prie šio skaičiaus tiesiog pridedame antrą ( 24.5f
) - apskaičiuotą pirmiausia ( 12.0f - 24.5f
), kad pakeistume skaičių.
antras = pirmas + antras; sekundė = (12,0f - 24,5f) + 24,5f = 12,0f
Dabar seka antroji 12.0f
(kuri iš pradžių buvo pirmosios vertė). Taigi, atimame apskaičiuotą pirmąjį ( 12.0f - 24.5f
) iš pakeisto antrojo ( 12.0f
), kad gautume kitą pakeistą skaičių.
pirmas = antras - pirmas; pirmasis = 12,0f - (12,0f - 24,5f) = 24,5f
Pakeisti numeriai ekrane spausdinami naudojant println()
.