将碰到过的坑做下记录,有时间便于自己回顾。
Java long long > int 转换
(1)int random = (int) System.currentTimeMillis() % 3;
(2)int random = (int) (System.currentTimeMillis() % 3);
(1)int强制转换修饰的是System.currentTimeMillis()的值,由于从long long > int,截取低字节,最高位有可能为1,为负数,random的值有可能为负数。
(2)System.currentTimeMillis()本身得到的值为long long非负,取余后同样为long long非负,然后再进行强制转换。