一.运算符和表达式
运算符分为五类:
1.算数运算符: + ; -(减); *(乘); /(取商); %(取余数);++(自增) ;- - (自减).
注意事项:++和- - 分为两种情况,例如:i++ 和 ++i,前者在计算中先用i的原始值,然后+1,后者是先+1然后在进行计算;- -类似.
2.赋值运算符:=(后面的值赋值给前面) += ; -= ; *= ; /= ; %=; 例如i+=2;效果等同于i+2后面几个类似.
注意事项:
复合的赋值运算符,有强制类型转换的能力;
byte,short,char在进行算术运算的时候,会自动提升为int类型,然后再进行算术运算;
赋值运算符的左边必须是变量;
3.比较运算符:> , <, >=, <=, ==, !=
运算的结果一定是boolean类型;
4.逻辑运算符: &,(左右两边都为true为true)|(左右两边有一个为false就为false),!(取反)和&& || 后面两者表示短路与和短路或
短路:
当&&或||在一定条件下,会发生短路现象;(就是只运算左边,不运算右边,这就是短路现象)
当&&的左边是false的时候,那么结果肯定是false,后面没有看的意义,然后会短路;
当||的左边是true的时候,那么结果肯定是true,后面没有看的意义然后会短路.
5:三元运算符:
格式:
数据类型 变量名 = 条件表达式?结果1:结果2;
例如
int a = 10;
int b=20;
int c = a>b ? a:b;
//作用是把比较a,b两者,把较大值给c.
执行流程:
结果1: 当表达式为true的时候,结果1生效;
结果2: 当表达式为fasle的时候,结果2生效;
二:Scanner类
概念: java编写的一个类,存在java.util包下,属于引用数据类型;
作用:让用户在程序执行的时候,使用键盘输入数据;
使用步骤:1:导包;把需要使用的类,所在的包拿到程序中来;导包语句必须写在类的上面;
代码格式:
import java.util.Scanner;
2:创建对象;给Scanner起个名字,目的是为了方便我们使用;
代码格式:
Scanner 对象名 = new Scanner (System.in);
3:调用方法
1:如果希望用户输入整数,调用nextInt();
格式:
int 变量名= 对象名.nextInt();
2:如果希望用户输入字符串,调用next();
格式:
String 变量名= 对象名.next();
三:if语句
1.基本if语句:
格式:
if (关系表达式) {
语句体; }
执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为true就执行语句体
③如果关系表达式的值为false就不执行语句体
④继续执行后面的语句内容
2.if-else语句:
格式: if (关系表达式) {
语句体1;
} else {
语句体2; }
执行流程:
①首先计算关系表达式的值
②如果关系表达式的值为true就执行语句体1
③如果关系表达式的值为false就执行语句体2
④继续执行后面的语句内容
3.if–else if语句
格式: if (关系表达式1) {
语句体1; } else if (关系表达式2) {
语句体2; } …
else {
语句体n+1; }
执行流程:
①首先计算关系表达式1的值
②如果值为true就执行语句体1;如果值为false就计算关系表达式2的值
③如果值为true就执行语句体2;如果值为false就计算关系表达式3的值
④…
⑤如果没有任何关系表达式为true,就执行语句体n+1