Java’da iki değişkenin yerini değiştirmek farklı yollarla oldukça basit bir şekilde gerçekleştirilebilir. Sıkça sorulan interview sorularından bir tanesi olan, iki variable’ı yani iki değişkeni birbiriyle değiştirme işlemini açıklamalı bir şekilde bir izah etmeye çalışacağız.
Java’da iki değişkenin yerlerini değiştirme
1. Yol
İki veriable’ın yerini değiştirmek için başvurulan ilk çözüm, geçici bir değer oluşturma şeklindedir. İngilizce temp yani geçici olarak isimlendirilen bu değişkene ‘a’ olarak isimlendirebileceğimiz ilk variable’ın değeri atanır. Ardından ‘b’ olarak isimlendirebileceğimiz ikinci variable’ın değeri, a değerine atanır. Böylelikle, a değeri, b değerini almış olur. Son olarak b değerine, en başta a değerini atadığımız temp variable’ın değeri atanır. Böylelikle a’nın değeri b’ye, b’nin değeri a’ya atanmış olur. Şimdi kod üstünde bu çözüme bir göz atabiliriz.
int a = 3;
int b = 4;
int temp = a;
//temp isimli bir değişken oluşturduk ve içine a’yı içine koyduk.
a = b;
b = temp;
//b’yı a’ya, atadık. temp’i ise b’ye.
System.out.println("a = " + a);
System.out.println("b = " + b);
//sonuc olarak a = 4 ve b = 3 oldu.
2. Yol
İki değişkeni birbiri ile değiştirmek için izleyebileceğimiz ikinci yol şu şekilde olacak;
int a = 3;
int b = 4;
a = a + b;
//iki değeri toplayıp a değişkenine atadık. a=7 oldu.
b = a - b;
//b değişkenini a’ya çevirmek için, a’dan b’yi çıkardım.
//Yani 7’den 4 çıktı ve b’ye atandı. Böylece b=3 oldu.
a = a - b;
// a = 4 // Son olarak a’dan yani 7’den bir önceki satır’da a’nın eski değeri
//olan 3’e dönüşen b’yi tekrar çıkaralım. Böylelikle a = 4 oldu.
System.out.println("a = " + a);
System.out.println("b = " + b);
//sonuc olarak a = 4 ve b = 3 oldu.
3. Yol
Yukarıdakine benzer şekilde, toplama yerine ilk olarak çarpma işlemi ardından da bölme işlemleri gerçekleştirerek de, iki değişkenin yerlerini değiştirmemiz mümkün. Kod üzerine göstermek gerekirse;
int a = 3;
int b = 4;
a = a * b;
// a = 3 * 4 (a = 12 olacak)
b = a / b;
// b = 12 / 4 (b = 3 olacak)
a = a / b; //
// a = 12 / 3 (a = 4 olacak)
System.out.println("a = " + a);
System.out.println("b = " + b);
Sonuc olarak a = 4, b = 3 olacak.
Java’da iki variable’ın değişimi bu şekilde. Bunlar dışında daha farlı çözüm metotları da mevcut. Fakat bu üç çözüm bizim en makul ve en kolay olarak gördüğümüz çözümler. Sizler de iki değişkenin yerlerini değiştirmek ile ilgili bir soru alırsanız bu çözümlerden bir tanesini kullanabilirsiniz. Son olarak ilk çözümle ilgili aşağıdaki videoyu izleyebilirsiniz.
https://www.youtube.com/watch?v=G0mFJUFMzjs&ab_channel=BroCode