GitOPEN's Home.

《Monkey Java》课程3.0之运算符与表达式

Word count: 745 / Reading time: 3 min
2015/07/04 Share

##运算符的分类

  • 算术运算符:+,-,*,/,%,++,–
  • 关系运算符:<,>,>=,<=,==,!=
  • 布尔逻辑运算符:!(逻辑或),&(逻辑与),|(逻辑或),^(逻辑异或),&&(短路与),||(逻辑或)
  • 位运算符:&,|,^,~,>>,<<,>>>
  • 赋值运算符:==
  • 扩展赋值运算符:+=,-=,*=,/=
  • 字符串连接运算符:+

##各种运算符的使用方法

###算术运算符:
关于算术运算符就不多说了,因为我大中国的教育是从小就学加减乘除。

注意1:

int i = 3/2;
请问i的值是几?
答:i的值是1。

一个运算的过程,它的结果的类型取决于这一次运算当中,所有操作数里面最大的操作数的类型。
3/2.0就等于1.5。由于2.0是double类型,3是整型,double比int类型的表数范围要大,因此结果的类型应该是double类型。

注意2:

i++ 和 ++i 的区别是什么?

答:i++先将i的值参加运算后在将i加1;++i是将i加1后再参加运算。

例子:(亲手敲代码)

1
2
3
4
5
6
7
8
9
10
11
12
public class Demo {
public static void main(String[] args){
int i = 5;
int j = i++ + 5;
int h = 100;
int k = ++h + 5;
System.out.println(j);
System.out.println(i);
System.out.println(k);
System.out.println(h);
}
}

###关系运算符

它得到的结果是布尔类型的值,也就是true或者false
例子:(亲手敲代码)

1
2
3
4
5
6
7
8
9
10
11
12
13
public class Demo {
public static void main(String[] args){
int i = 5;
int h = 100;
int k = 5;
boolean result01 = i > h;
boolean result02 = i != h;
boolean result03 = i == k;
System.out.println(result01);
System.out.println(result02);
System.out.println(result03);
}
}

###布尔逻辑运算符(重点)

它其实就是用来计算true或者false

我们用一张图表来展示逻辑运算符的结果:
图3.0.01。逻辑运算符

例子:(请动手)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Demo{
public static void main(String[] args) {
boolean a = true;
boolean b = false;

boolean c = a & b;
boolean d = a && b;
System.out.println(c);
System.out.println(d);

int i = 5;
// 注意: & 两边的表达式都会运算
boolean e = i > 6 & i++ > 7;
// 注意:使用 && 时,如果 i>6为false,则i++>7就不会运算了。
boolean f = i > 6 && i++ > 7;
System.out.println(e);
System.out.println(f);
System.out.println(i);
}
}

扩展赋值运算符

例子:(请动手)

1
2
3
4
5
6
7
8
public class Demo{
public static void main(String[] args) {
int i = 5;
i += 5; // 相当于i = i + 5;
i *= 5; // 相当于i = i * 5;
System.out.println(i);
}
}

##什么是表达式

概念:(实记)

表达式是符合一定语法规则的运算符和操作符的序列。

对表达式中操作数进行运算得到的结果称为表达式的值

表达式的值的数据类型即为表达式的类型

例子:(请动手)

1
2
3
4
5
6
7
8
9
10
11
12
public class Demo{
public static void main(String[] args) {
int i = 5;
// 这是一个表达式,它的类型是int整型,它的值是10;
int j = i + 5;
// 请自己表述一下。
boolean b = i < 10;

System.out.println(i);
System.out.println(j);
}
}


欣慰帮到你 一杯热咖啡
【奋斗的Coder!】企鹅群
【奋斗的Coder】公众号
CATALOG
  1. 1. 扩展赋值运算符