栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

2.Java之算术运算符(double运算注意点,%-取模细讲,i++和++i的区别细讲)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2.Java之算术运算符(double运算注意点,%-取模细讲,i++和++i的区别细讲)

2.1.double运算注意点
System.out.println(10 / 4);

java输出是2,即默认结果是int类型

System.out.println(10.0 / 4);

java输出是2.5,即默认结果为double类型

所以在给double赋值时,要尤为注意:

double d = 10 / 4;
//输出结果为 10 / 4 = 2,2 => 2.0

double d = 10.0 / 4;
2.2.%-取模详讲

%的本质是:

a % b = a - a / b * b

10 % 3 = 1
-10 % 3 = -1

-10 % 3 = (-10) - (-10) / 3 * 3 =(-10) - (-9) = -1

10 % -3 = 1

10 % -3 = (10) - 10 / (-3) * (-3) = 10 - 9 = 1

-10 % -3 = -1

(-10) % (-3) = (-10) - (-10) / (-3) * (-3) = -10 + 9 = -1

口诀:左负双负取负号

2.3.i++和++i的区别
  • 自增++作为独立的语句使用:

即 i++; 或者 ++i;

前++和后++都完全等价于 i = i + 1;

  • 作为表达式使用:

前++:先运算后赋值

a = 2;
b = ++a;

后++:先赋值后运算

a = 2;
b = a++;
输出结果为:

  • 深度探索:

int i = 1; i = i++; 结果多少?

其实在赋值时引用了临时变量,步骤为:

  1. temp = i;
  2. i = i + 1;
  3. i = temp;

所以结果为 1

int i = 1; i = ++i; 结果多少?

步骤为:

  1. i = i + 1;
  2. temp = i;
  3. i = temp;

所以结果为 2

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/362305.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号