Operan di sisi kiri operator penugasan harus berupa variabel, bukan konstanta atau ekspresi. Nilai ekspresi penugasan adalah = nilai variabel di sisi kiri.
Melihat:
1) Jangan bingung antara operator penugasan = dengan operator relasional ==.
2) Selain operator penugasan =, ada juga operator penugasan yang diperluas.
Contoh:
publicclassMain{publicstaticvoidmain(String[]args){inta=1;intb=2;intc=0;c=a+b;System.out.println(c=a+b=+c);c+=a;System. keluar.println(c+=a=+c);c-=a;Sistem.keluar.println(c-=a=+c);c*=a;Sistem.keluar.println(c*=a=+c );a=3;c=4;c/=a;Sistem.keluar.println(c/=a=+c);a=5;c=6;c%=a;Sistem.keluar.println(c %=a=+c);c&=a;Sistem.keluar.println(c&=a=+c);c|=a;Sistem.keluar.println(c|=a=+c);c^=a ;Sistem.keluar.println(c^=a=+c);c>>=1;Sistem.keluar.println(c>>=1=+c);c<<=1;Sistem.keluar.println( c<<=1=+c);}}
Hasil yang berjalan adalah sebagai berikut:
c=a+b=3c+=a=4c-=a=3c*=a=3c/=a=1c%=a=1c&=a=1c|=a=5c^=a=0c>>=1= 0c<<=1=0