Müritler mesela: long a = 153421321 ; double b = 1.0005 ; a = a b ; şeklinde çarparken compile hatası alıyorum ancak a = b şeklinde çarparsam hata vermiyor bu ifadede double ile longu çarparken doubleı otomatik longa mı dnüştürüyor nr oluyor anlayamadım. Neden ilk ifadedeki problem nedir?

16. blüm http://docs.oracle.com/javase/specs/jls/se5.0/html/defAssign.html ftw

Müritler mesela: long a = 153421321 ; double b = 1.0005 ; a = a b ; şeklinde çarparken compile hatası alıyorum ancak a = b şeklinde çarparsam hata vermiyor bu ifadede double ile longu çarparken doubleı otomatik longa mı dnüştürüyor nr oluyor anlayamadım. Neden ilk ifadedeki problem nedir? a =b diyince double ı long a cast ediyor galiba Si vis pacem para bellum.

c# da denedim ikisinde de tür dnüşüm hatası verdi.. javada farklı olabilir Ülkesini Seven Her Türk Vatandasi, Ülkesinin Sessiz Istilasi'na karsi durmak zorunda.

tesekkür ettim hepinize. süleymn tartışma urlsi iyiymis net anladım.

double türü http://docs.oracle.com/javase/7/docs/api/java/lang/Double.html long türü http://docs.oracle.com/javase/7/docs/api/java/lang/Long.html double longdan daha büyük olduğu için b yi a ya atarken cast yapman gerekir. http://stackoverflow.com/questions/8710619/java-operator aynı konu burada da tartışılmış. += yaptığında otomatik olarak casting işlemi gerçekleşiyor. Cehennemin dibine kadar yolum var daha.. || Nasılsa her yalnız kendine sürgündür Asmera unutma.