Mobil Programlama

Android

DERS PROGRAMI
Android 101 Ders Programı

Tekli Operatörler

Lisans: Creative Commons 26.11.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

Bu bölümde negatifini alma (), pozitifini alma (+), artım (++) ve azaltım (––) operatörlerini inceleyeceğiz. Negatifini alma operatörü () tek bir operand üzerinde etkili olduğu için, iki operand ile işleme giren (––) sembolü ile karıştırılmamalıdır.

ÖRNEK:

public class Uyg5 {
    public static void main(String[] args){
        int x, y=-5;
        
        x=16- -y;
        System.out.println("x="+x);
    }
}

Bu programda x’in değeri 11 olarak bulunacaktır. –y – ­(­–5)= +5 olarak hesaplanır. 16’yı izleyen çıkarma operatörü () ile y’nin önündeki negatifini alma () operatörü arasında mutlaka bir boşluk olmalıdır. Aksi halde (–) ifadesi azaltım operatörü olarak algılanacaktır.

Tablo T.1-Tekli Operatörler
operatör
sembolü
kullanlışı
işlem sonucu
tekli negatif alma a a’nın negatifini alır
son artım ++ a++
önce a’nın değerini al, kullan, sonra 1
artır.
ön artım ++ ++a önce a’nın değerini 1 artır, sonra kullan.
son azaltım –– a–– önce a’nın değerini al, kullan, sonra 1
son azaltım azalt.
ön azaltım –– ––a önce a’nın değerini 1 azalt, sonra kullan.
 

Son artım ve son azaltım operatörlerinde derleyici, değişkenin o andaki değerini bellekte geçici bir değişkene atayarak saklar. Sonra değişkenin değerini 1 artırır (son artım) veya 1 azaltır (son azaltım). Geçici değişkendeki değer ise ifade içinde kullanılır.

 

ÖRNEK PROJE:



public class Uyg6 {
    public static void main(String[] args){
        int x=4, y=8, z;

        z= x++ + y--;

        System.out.println("z="+z);
        System.out.println("x="+x);
        System.out.println("y="+y);
    }
}

PROJENİN ÇIKTISI:

​​

AÇIKLAMA:

Önce x ve y’nin o andaki değerleri geçici bellek alanlarına atanmış (4 ve 8), bu değerlerle ifade hesaplanmış (z=12) sonra x’in değeri 1 arttırılmış ve y’nin değeri 1 azaltılmıştır. İfadeyi z= x+++y--­­; şeklinde boşluksuz yazsak da sonuç değişmezdi. Derleyici bu durumda +++’nın mevcut operatörler içinde mümkün olan en uzununu (++) alır ve ifadeyi şu şekilde yorumlardı:

z=(x++) + y––­­ ;

Aynı ifadeyi z=x+++ veya y––- şeklinde yazsak da aynı sonucu elde ederdik. Ön artım ve ön azaltım operatörleri kullanıldığında ise, önce artım (mevcut değere 1 ekleme) veya azaltım (mevcut değerden 1 çıkarma) gerçekleşecek, sonra ifade hesaplanacaktır.

 

ÖRNEK UYGULAMA:



public class Uyg7 {
    public static void main(String[] args){
        int x, y, z, m;

        x=10; 
        y=5;
        z=16;
        
        m=++x - --y + z++;
        
        System.out.println("z="+z);
        System.out.println("x="+x);
        System.out.println("y="+y);
        System.out.println("m="+m);
    }
}

UYGULAMANIN ÇIKTISI:

ARTIM VE AZALIM OPERATÖRLERİ İÇİN BİR DİĞER ÖRNEK UYGULAMA

public class Uyg8 {
    public static void main(String[] args){
        int m, n, p, q;
        
        m=4;
        n=2;
        p=10;
        q=8;
        
        m= -m++;
        n= n--;
        p= --p;
        q= -++q;
        System.out.println("m="+m);
        System.out.println("n="+n);
        System.out.println("p="+p);
        System.out.println("q="+q);
    }
}

UYGULAMANIN ÇIKTISI