主要内容
- 运算符
- 条件表达式
- 扩展运算符
- 比较运算符
- 逻辑运算符
- 位运算
- 键盘录入
- 流程控制语句
一、运算符
+ - * / % ++ –
1、+
三个表示意思
- 正数
- 加号
- 字符串拼接
2、-
- 负号
- 减号
3、*
- 乘法运算
4、/
- 除法运算
5、%
- 取余运算
6、++
自增运算
-
前缀自增:先给自身+1,后参与操作
int a = 1; ++a
-
后缀自增:先进行操作,后给自身+1
int a = 1; a++;
7、–
自减运算,同自增相反
二、条件表达式
条件?表达式1:表达式2
例如:1<2?"true":"false"
三、扩展运算符
+= -= *= /= %=
含义:对变量进行操作后,再次赋值给变量
int a = 1;
a += 1;
a -= 1;
a *= 1;
a /= 1;
a %= 1;
特点:隐含了阿自动类型转换。
四、比较运算符
== != > < >= <=
含义:比较两个数据是否相等、不相等、大于、小于、大于等于、小于等于,得出比较结果
特点:比较结果为double类型的值
五、逻辑运算符
运算符 | 含义 | 说明 |
---|---|---|
& | 逻辑与 | 可做位运算符 |
| | 逻辑或 | 可做为运算符 |
! | 逻辑非 | |
^ | 逻辑异或 | 可做位运算符 |
&& | 短路与 | |
|| | 短路或 |
-
&:逻辑与,全为true则为true,有一个为false则为false
System.out.println(1>2&1>3); // false
-
|:逻辑或,有一个为true则为true,全为false则为false
System.out.println(1<2|1>3); // true
-
!:逻辑非,true为false,false为true
System.out.println(!true); // false
-
^:逻辑异或,一个为true一个为false则为true,如果同为true或者false则为false
System.out.println(true^false); // true
-
&&:短路与,两个都为true则为true,否则为false,如果左边为false则右边短路不执行
int i=1; System.out.println(i++>1&&++i<1); // false System.out.println(i); // 2
-
||:短路或,有一个为true则为true,全为false则为false,如果左边的为true则右边短路不执行
int i=1; System.out.println(i++>1||++i<1); // fasle System.out.println(i); // 3
位运算
-
& 逻辑与
System.out.println(1&2); // 0
二进制:1→01、2→10
相异为0,相同为1,则二进制为:00
所以结果为0
-
**|**逻辑或
System.out.println(4|8); // 12
二进制:4→0100、8→1000
有1则为1,没有则为0,则二进制为:1100
所以结果为12
-
**^**逻辑异或
System.out.println(1^2); // 3
二进制:1→01、2→10
相同为0,不同为1,则二进制位11
所以结果为3
六、键盘录入
Scanner in = new Scanner(System.in);
int age = in.nextInt();
System.out.println(age);
String name = in.next();
System.out.println(name);
String a1 = in.nextLine();
System.out.println(a1);
double a2 = in.nextDouble();
System.out.println(a2);
System.out.println(in.hasNext());
System.out.println(in.hasNextInt());
System.out.println(in.hasNextDouble());
方法名 | 描述 |
---|---|
nextInt() | 读取输入的int类型内容 |
next() | 读取输入的下一个单词,以空格位分隔符 |
nextLine | 读取输入的下一行内容 |
nextDouble() | 读取输入的double类型内容 |
hasNext() | 检测输入中是否还有其它单词 |
hasNextInt | 检测输入中是否还有其它int类型内容 |
hasNextDouble() | 检测输入中是否还有其它double类型内容 |
七、流程控制语句
1、单分支
if(条件){
执行程序
}
2、双分枝
if(条件){
执行程序
}else{
执行程序
}
3、多分枝
if(条件){
执行程序
}else if(条件){
执行程序
}else if(条件){
执行程序
}else if(条件){
执行程序
}...