multiplikation med variabelnamn
Hej jag försöker förstå hur java multiplicerar o dividerar. Jagförstår inte hur det funkar då man väljer variabelnamn eller väljer o skriva det rakt ut. För vol2 och vol22 tycker jag är identiska men de får olika värden
När du skriver "4/3" i vol22 blir både 4 och 3 heltal. Därför antas 4/3 vara en heltalsdivision och således klipps decimaldelen av så att svaret blir ett heltal (1.33... blir 1).
Om du däremot specificerar att du vill ha svaret på divisionen som double genom att casta blir svaret som förväntat:
double vol22 = pi*((double) 4/3);
okej men på vol12. där så multipliceras 4 och pi först och delas sen på tre. eftersom pi är en double så blir väll inte det en heltalsdivision då det divideras med 3?
solaris skrev:okej men på vol12. där så multipliceras 4 och pi först och delas sen på tre. eftersom pi är en double så blir väll inte det en heltalsdivision då det divideras med 3?
Det stämmer, det blir flyttalsdivision.