0
点赞
收藏
分享

微信扫一扫

第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符

学习笔记,仅供参考


文章目录

  • ​​JAVA基础语法​​
  • ​​运算符​​
  • ​​算数运算符​​
  • ​​算术运算符​​
  • ​​++和--​​
  • ​​赋值运算符​​
  • ​​关系运算符​​


JAVA基础语法



运算符



  • 什么是运算符

就是对常量和变量进行操作的符号。

  • 运算符的分类

算术运算符,赋值运算符,比较(关系或条件)运算符,逻辑运算符,位运算符,三目(元)运算符



算数运算符



算术运算符
+, -, *, /, %, ++, --
  • 注意事项
  • ​+​​加号在java中有三种作用,代表正号,做加法运算,字符串的连接符
  • 整数相除只能得到整数。如果想得到小数,必须把数据类型转化为浮点数类型
  • ​/​​​获取的是除法操作的商,​​%​​获取的是除法操作的余数
  • ​%​​运算符
  • 当左边的绝对值小于右边绝对值时,结果是左边
  • 当左边的绝对值等于右边或是右边的倍数时,结果是0
  • 当左边的绝对值大于右边绝对值时,结果是余数
  • ​%​​运算符结果的符号只和左边有关系,与右边无关
  • 任何一个正整数​​%2​​结果不是0就是1可以用来当作切换条件

  • 举个例子
class OperatorTest {
public static void main(String[] args) {
System.out.println(10/3);
System.out.println(10/3.0);
System.out.println(3 % 5);
System.out.println(10 % 5);
System.out.println(10 % 4);
System.out.println(-7 % 3);
System.out.println(7 % -3);

}
}

输出:

3
3.3333333333333335
3
0
2
-1
1



++和–



  • ++和–运算符的作用
  • ​++​​: 自加,对原有的数据进行+1
  • ​--​​: 自减,对原有的数据进行-1


  • 单独使用++或–
class OperatorTest {
public static void main(String[] args) {
int a = 3;
a++; //a = a+1
System.out.println(a);
++a; //a = a+1
System.out.println(a);

}
}

输出:

4
5

当我们在单独使用​​++​​​时,它在a之前和a之后的效果都是一样的,都相当于​​a = a+1​



  • 参与运算时使用++或–

​++​​在变量之后

class OperatorTest {
public static void main(String[] args) {
int a = 3;
int b;
b = a++;
System.out.println("a = " + a);
System.out.println("b = " + b);

}
}

输出:

a = 4
b = 3

当​​++​​​在变量a后面时(​​a++​​​),会先将变量中的值取出来,做赋值操作(​​b = a​​​),然后再自身加1(​​a = a + 1​​)



​++​​在变量之前

class OperatorTest {
public static void main(String[] args) {
int a = 3;
int b;
b = ++a;
System.out.println("a = " + a);
System.out.println("b = " + b);

}
}

输出:

a = 4
b = 4

当​​++​​​在变量之前的时候(++a),会先自身加1(​​a = a + 1​​​),然后将加1后的结果做赋值操作(​​b = a​​)



  • 举个例子1
class OperatorTest2 {
public static void main(String[] args) {
int a = 10;
int b = 10;
int c = 10;

a = b++; //a = 10, b = 11
c = --a; //a = 9, c = 9
b = ++a; //a = 10, b = 10
a = c--; //c = 8, a = 9

System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);

}
}

输出:

a = 9
b = 10
c = 8



  • 举个例子2
class OperatorTest3 {
public static void main(String[] args) {
int x = 4;
int y = (x++) + (++x) + (x*10); //4 + 6 + 6*10
System.out.println("y = " + y);
}
}

输出:

y = 70



  • 举个例子3

下面两种自身加1的情况中,哪种情况会报错?

class OperatorTest4 {
public static void main(String[] args) {
byte b = 10;
b++; //b = (byte)(b + 1);
//b++;会自动帮我们进行强制类型转换,则不会报错
b = b + 1; //因为byte + int --> int
//如果不进行强制转换,则会报错
System.out.println("b = " + b);
}
}



赋值运算符



  • 基本的赋值运算符:=

​a = b​​​是把​​=​​右边的b赋值给左边的a,左边一定是变量,不能是常量。

  • 扩展的赋值运算符:+=,-=,*=,/=,%=

​a+=1​​ 把左边的a和右边的1做加法,然后赋值给左边的a



  • 举个例子
class OperatorTest5 {
public static void main(String[] args) {
int a = 3;
int b = 2;
int c;
a += 4;
System.out.println("a = " + a);
b *= 3;
System.out.println("b = " + b);
c = b;
System.out.println("c = " + c);

}
}

输出:

a = 7
b = 6
c = 6



关系运算符



  • 关系运算符有哪些(比较运算符,条件运算符)
==, !=, >, >=, <, <=
  • 注意事项
  • 无论操作是简单还是复杂,结果都是是boolean类型。
  • ​==​​​不能写成​​=​


  • 举个例子
class OperatorTest6 {
public static void main(String[] args) {
System.out.println(4 == 3);
System.out.println(4 != 3);
System.out.println(4 > 3);
System.out.println(4 >= 3);
System.out.println(4 < 3);
System.out.println(4 <= 3);

}
}

输出:

false
true
true
true
false
false

举报

相关推荐

0 条评论