JAVA Numeric Expressions

Example Of Expression in Types Numerical Example
decimal division double / double ==> double 10.0 / 4.0 = 2.5
integer division int / int ==> int 10 / 4 = 2
numeric promostion int / double ==> double 10 / 4.0 = 2.5
numeric promostion double / int ==> double 10.0 / 4 = 2.5
explicit casting (int)double ==> int (int)13.8 ==> 13
explicit casting (double)int ==> double (double)13 ==> 13.0



JAVA Numeric Assignments

Attempted Assignment Numerical Example Compilation Error? Due To
int = int; int result = 3; no error same type
double = double; double result = 3.0; no error same type
double = int; double result = 3; no error numeric promotion
int = double; int result = 3.0; ERROR explicit cast needed



Examples With Order of Precendence

Prior Declarations Assignment Type Execution of the Assignment Actual Execution of the Assignment
int a;
double x = 10.0
double y = 6.0
a = (int)x / (int)y; int = (int)double / (int)double;
int =         int      /      int;
int =                  int;
a = (int)10.0 / (int)6.0;
a =       10     /      6;
a =               1;
int a;
double x = 10.0;
double y = 6.0;
a = (int)(x / y); int = (int)(double / double);
int = (int)       double;
int = int
a = (int)(10.0 / 6.0);
a = (int)1.666667;
a =          1;
int a;
int b = 3;
double x = 35.5;
double y = 10.4;
a = (int)(y * b) % ((int)x % b) int = (int)(double * int) % ((int)double % int);
int = (int)      double      % (       int       % int);
int =                  int        %                 int;
int =                             int;
a = (int)(10.4 * 3) % ((int)35.5 % 3);
a = (int)    31.2      % (     35      % 3);
a =             31        %            2;
a =                         1;
int a;
int b = 3;
double x = 35.5;
double y = 10.4;
a = (int)y * b % (int)x % b int = (int)double * int % (int)double % int;
int =       int        * int %         int       % int;
int =                 int      %         int       % int;
int =                        int                       % int;
int =                                         int;
a = (int)10.4 * 3 % (int)35.5. % 3;
a =       10     * 3 %       35      % 3;
a =             30     %       35      % 3;
a =                     30                 % 3;
a =                                 0;