Soru & Cevap

Android Tekli Operatörler Gösterim Hatası

20.09.2013 - 10:27

Eclipse ide'si üzerinde tekli operatörler konusunda denemeler yapmak istediğimde

z= x+++y­­ ; 

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

 z=x+++(y––) veya z=x+++(y––) 

m= ++x–––­­­y+z++ ;

şeklindeki işlemleri yapamadım maalesef. 

Syntax error on tokens, delete these tokens

y­­-- cannot be resolved to a variable

Şeklinde hatalarla karşılaştım. Konuda anlatılan gösterimleri çalıştırmak için hangi kısımları düzenlemem gerekli?

14 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-472-1375079047.jpg
mehmet.altiparmak
21.09.2013 - 11:25

Merhaba Selim,

Ben aşağıdaki kod bloğunu başarıyla çalıştırdım. Sen de deneyebilirsin istersen.

class OrnekProgram
{
 public static void main(String[] args )
 {
  
  int y = 0, z = 5, x = 3;
  int m;
  
  z = x++ + y--;
  z = x++ + (y--);

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


}

 

Dikkatini çekmek istediğim bir nokta var. Bir değişkene iki defa ++ ya da -- operatörlerini uygulamaya çalışıyorsun sanırım. Örnek olarak y değişkenin iki defa azaltmak için:

int y = 5;

y---- ;

Bu geçerli bir ifade değil çünkü şu şekilde çalışıyor, ilk olarak daha okunur hale getirelim.

(y--)--;

İlk -- operatörünü işletelim.

(5 - 1)--; --> 4--; //Bu satırda derleyici şu şekilde bir hata veriyor: "-- operatörü operand olarak bir değişken bekliyor ancak verilen operand bir değer." Yani -- operatörünün sol ya da sağ kısmında yer alan ifade bir değişken olmalı 4 gibi bir değer değil. İki defa -- ++ operatörü uygulamak yerine 2 çıkarmak daha uygun görünüyor.