java学习第三章(算术运算符)

  • 算术运算符顾名思义加减乘除。

我来吐槽个,我觉得中国的数学对程序是不友好的,比如我们的乘法运算符是“x” 而计算机是“*”,除法运算符是“÷” 而计算机是“/”。

  • 补充一个Eclipse的快捷补全代码技巧sysout + alt + / === System.out.println()

加减乘除

// 加
int a = 10, b = 20, c;
c = a + b;
System.out.println(c); // 30
 // 减
int d = -10, e = 20;
int f = d - e;
System.out.println(f); // -30
// 乘
int g = d * e;
System.out.println(g); // -200
// 除
int h = d/e;// 实际等于-0.5
System.out.println(h); // 0
// 因为int不支持小数,如果小数统统不管小数位后面的。

隐式类型转换

// 还记得我们说java类型都是强定义的吗?就是定义了数字int不能再赋值字符串和小数。
int i = 3; // 4个字节
long k = i; // 8个字节
System.out.println(k); // 3 并不会报错哦
long m = 100;
// int l = m; // 会报错
int l = (int) m; // 强制类型转换_根据小的类型作为强制类型eg:(int)而不是(long)
System.out.println(l); // 100 并不会报错哦,但是我们不允许这么做,因为会失去精度!

复合运算一

// 加等于
int n = 2;
n+= 2; // n =n + 2
System.out.println(n); // 4
float o = 2;
o += 3; // o = 2.0 + 3.0 ,有一个隐式转换
System.out.println(o); // 5.0

// 乘等于
int p = 2;
p*= 2; // p =p * 2
System.out.println(p); // 4

//除等于
int q = 4;
q /= 2; // q =q / 2
System.out.println(q); // 2

// % 取余(读音:mo)
int r = 7, s, t;
s = r % 3; // s = 7÷3得2余1
t = r % 4; // s = 7÷4得1余3
System.out.println(s); // 1
System.out.println(t); // 3

//%等于
int u = 9;
u %=5; //u = u % 5 = 9除五得1余4
System.out.println(u); // 4

复合运算二

//后置加加 ++
int v = 1;
v++; // v = v + 1
System.out.println(v); // 2

//后置减减 --
int w = 1;
w--; // w = w + 1
System.out.println(w); // 0


//ps: 注意运算和赋值是不同步的,自增自减一旦赋值,都比赋值慢一步执行!
int x = 1;
int y = x++; // 实际是两步:y = x ; x = x + 1;

System.out.println(y); //  后置++打印结果为 1

// 理解下这个常见的面试题,理解了就相当于你掌握了。
int z= 2;
int z1= z++; // 其实你可以理解为两行代码,z1 = z;z = z + 1;
System.out.println(z); // 3
System.out.println(z1); // 2

// 讲解:当z1 = z++的时候赋值再计算的原则,所以z1赋值还是2,但是完了马上就执行z++, 所以z等于3。打印是z++执行完以后才执行的!

// 我们已经用完了26个字母了!!!我要用大写了请注意!!!


// 前置加加 ++ 
int A = 1;
++A; // A = A+ 1
System.out.println(A); // 2

//前置减减 -- 
int B = 2;
--B; //  B = B - 1
System.out.println(B); // 1

// 理解下这个常见的面试题,理解了就相当于你掌握了。
int C= 2;
int D= ++C; // 这里也是两步但是先执行C = C + 1; 然后D = C;
System.out.println(C); // 3
System.out.println(D); // 3

// why?
// 记住前置是先计算再赋值。

检验题:请输出打印结果

int E = 20, F;
F = E++;
++E;
E = --F;
System.out.println(F);
System.out.println(E);
System.out.println(++F);
System.out.println(F);

// 正确答案见评论

PS

前置++,--都是先计算再赋值
后置++,--都是先赋值再计算

八种基础数据转字符串

int num1 = 20, num2 = 30;
String str1 = "123" + num1 + num2;
System.out.println(str1);
// 1232030
  • 当“+”号链接两个数字时是加法运算符,当链接字符串时是连接符。
  • 八种基础类型 + 字符串 都会变成字符串类型
两个特殊字符/n /t
String str2 = "1234\n" + 567;
System.out.println(str2); // 预测结果应该是1234\n567
// 实际结果
/* 
*1234
*567
*/
String str3 = "1234\t" + 567;
System.out.println(str3);// 预测结果应该是1234\t567
// 实际结果
// 1234   567
  • \n : 换行符
  • \t : 空格(水平制表位)
上一章 目录 下一章
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、PyCharm的基本使用1.1、注释:为了方便自己或者其他人查看单行注释:用 # 号单行注释多行注释: 用 ...
    IIronMan阅读 9,085评论 3 18
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 4,196评论 1 10
  • 运算符是处理数据的基本方法,用来从现有的值得到新的值。JavaScript 提供了多种运算符,本章逐一介绍这些运算...
    许先生__阅读 712评论 0 3
  • 今天早上,看到昨晚某群里的一个“被女朋友吐槽”的视频。 在的士里,老板与员工打了招呼,下了车到了另外一台较差的车,...
    烽人阅读 331评论 0 1
  • 记得书上说古时,人们诚实谦逊不拾遗,做事精钻而贵专 古时的人求学刻苦,书生有模有样,礼义廉耻,谨记心间 古时的茶肆...
    乐只君子_阅读 154评论 0 3

友情链接更多精彩内容