取模的本质, a%b=a-a/b*b;
++,-- 自增和自减的用法:
1.作为独立语句时,例:i = 1;i++; ++i; //都表示 i = i + 1; 所以i = 3;
2.作为表达式时,例: i = 1; k = i++; //表示先赋值后自增,即 k = i; 后 i = i + 1; 结果 k = 1; i = 2;
k = ++i ; // 表示先自增后赋值 , 即 i = i + 1; k = i; 结果 k = 2; i = 2;
逻辑运算符
短路与 && 和 逻辑 & 的作用相同,特点:如果两个条件 都为 true 则结果为 true ,其他为false。
区别在于:短路与 && 如果第一个条件为false ,则直接跳过第二个条件判断,效率高,也是经常使用的。 而逻辑与 & 则依然会对第二个条件进行判断,效率低。
短路或 || 和 逻辑 | 和上类似,特点:只要有一个条件为true,则结果为true。
区别与上面相同,所以开发中使用短路或 ||。
逻辑异或^ ,特点 两个条件不同时,结果为true,否则为false。
复合赋值运算符会进行类型的强制转换,例如: byte a = 1;
a += 1 ; // 相当于 a = (byte) (a + 1);
但如果直接 表示 a = a + 1; 则会报错,1为int,转为Int时由于a是byte类型而不兼容。
a++也如上相同。
用户需要输入时,需要导入util包中的Scanner类,格式为:
import java.util.Scanner;
使用时,在主函数main里,Scanner input = new Scanner(System.in);
String name = input.next();
int age = inputt.nextInt();
.....