Java基础-Scanner-运算符-if
一、运算符
-
概述:可以进行数据运算的符号,就是运算符
-
分类:
算术运算符
赋值运算符
比较运算符
逻辑运算符
三元运算符 -
算术运算符:
+ , - , * , / , % , ++ , --
++,-- 在前,先自增(或自减),后进行别的操作,例如: ++i,--i ++,-- 在后,先进行别的操作,后自增(或自减),例如: i++,i--
-
赋值运算符:
= , += , -= , *= , /= , %=
注意事项:
1.复合的赋值运算符,有强制类型转换的能力2.byte,short,char在进行算术运算的时候,会自动提升为int类型,然后再进行算术运算
3.赋值运算符的左边必须是变量
-
比较运算符:
> , < , >= , <= , == , !=
注意:运算的结果一定是boolean类型
-
逻辑运算符:
&& , || , !
短路:
当&&或||在一定条件下,会发生短路现象;(就是只运算左边,不运算右边,这就是短路现象)①当&&的左边是false的时候,会短路,右边不执行
例如:
public class test01{
public static void main(String[] args){
int i = 1;
boolean b = (++i > 2 && i++ > 3);
//左边为false,只执行左边,右边不执行,输出的i为2
System.out.println(i);
}
}
②当||的左边是true的时候,会短路,右边不执行
例如:
public class test02{
public static void main(String[] args){
int i = 1;
boolean b = (++i > 1 || i++ > 3);
//左边为true,只执行左边,右边不执行,输出的i为2
System.out.println(i);
}
}
-
三元运算符
格式:数据类型 变量名 = 条件表达式 ? 结果1 : 结果2
执行流程:
结果1: 当表达式为true的时候,结果1生效 结果2: 当表达式为fasle的时候,结果2生效
二、Scanner
-
概述:java编写的一个类,存在java.util包下,属于引用数据类型
-
作用:让用户在程序执行的时候,使用键盘输入数据
-
使用步骤:
①导包;把需要使用的类,所在的包拿到程序中来;导包语句必须写在类的上面代码格式: import java.util.Scanner;
②创建对象;给Scanner起个名字,目的是为了方便我们使用;
代码格式: Scanner 对象名 = new Scanner (System.in);
③调用方法
1.如果希望用户输入整数,调用nextInt() 格式: int 变量名= 对象名.nextInt(); 2.如果希望用户输入字符串,调用next() 格式: String 变量名= 对象名.next();
三、if语句
- if语句
①仅判断一种情况,满足就执行,不满足就跳过
②格式:
if (关系表达式) {
语句体;
}
③执行流程:
1.首先计算关系表达式的值
2.如果关系表达式的值为true就执行语句体
3.如果关系表达式的值为false就不执行语句体
4.继续执行后面的语句内容
- if-else语句
①从两种情况中选择其一
②格式:
if (关系表达式) {
语句体1;
} else {
语句体2;
}
③执行流程:
1.首先计算关系表达式的值
2.如果关系表达式的值为true就执行语句体1
3.如果关系表达式的值为false就执行语句体2
4.继续执行后面的语句内容
-
if-else if语句
①在多种情况中选择其一
②格式:
if (关系表达式1) {
语句体1;
} else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
③执行流程
1.首先计算关系表达式1的值
2.如果值为true就执行语句体1;如果值为false就计算关系表达式2的值
3.如果值为true就执行语句体2;如果值为false就计算关系表达式3的值
4.…
5.如果没有任何关系表达式为true,就执行语句体n+1