1.java运算符
-
算术运算符:+、-、*、/、%(取余)、++、–
- ++:自增,a++表示先赋值再运算,++a表示先运算再赋值
- –:自减
-
赋值运算符:=
-
关系运算符:>、<、>=、<=、==、!=、instanceof()
- 表示判断
-
逻辑运算符:&&(与)、||(或)、!(非)
-
&&:全真则为真
-
||:全假则为假
-
!:假为真,真为假
-
短路运算:在判断&&第一个元素为假时,后面将不予计算
public class 逻辑运算符 { public static void main(String[] args) { // &&(与) ||(或) !(非) boolean a=false; boolean b=true; System.out.println(("a&&b:")+(a&&b));//全为真则为真 System.out.println(("a||b:")+(a||b));//全为假则为假 System.out.println(("b:")+!(b));//假为真,真为假 System.out.println("======================================="); //短路运算:若前面判断为假,则后面不会运算 int e=10; boolean f=(e>10)&&(e++<10); System.out.println(f); System.out.println(e); } }
-
-
位运算符:&、|、^、~、>>、<<、>>>
-
1.<<:表示*2
-
2.>>:表示/2
高效率 * <<左移 相当于*2 * >>右移 相当于/2 * 2*8=2<<3(在一个<<基础上乘三个<<,2<<<<<<) * System.out.println(2<<3);
-
-
条件运算符(三元运算符)::、?
public class 三元运算符 { public static void main(String[] args) { //三元运算符 //X? Y:Z // int a=80; String type=a<60?"不及格":"及格"; if (a>90) System.out.println("优秀"); System.out.println(type); } }
-
扩展赋值运算符:+=、-=、*=、/=
-
a+=b: a=a+b
-
a-=b: a=a-b
-
a星号=b: a=a*b
-
a/=b: a=a/b
-
扩展运算符
- “”+a+b:字符串之后的“+”都起连接作用
- a+b+"":字符串之前的“+”都做运算符
public class 扩展运算符 { public static void main(String[] args) { int a=20; int b=30; //字符串连接符 System.out.println(a); System.out.println(b); System.out.println(""+a+"\t"+b+a); System.out.println(a+b+""); System.out.println("=========================="); //扩展运算符 a+=b;//a+=b:a=a+b System.out.println(a); a-=b;//a-=b:a=a-b System.out.println(a); a*=b;//a*=b:a=a*b System.out.println(a); a/=b;//a/=b:a=a/b System.out.println(a); } }
-
注意:byte、short 、char使用运算符后自动升为int类型(低转高:自动升型)
2.Scanner对象
接收方法
-
next()
- 一定要读取到有效字符才可以结束
- 有效字符之前的空白会被自动去除
- 有效字符之后的空白作为隔离符或者结束符
- 不能得到一个带有空格的字符串
-
nextline()
- 以回车(enter)结束,可以得到带有空格的所有字符串
-
scanner进阶:输入整数或者小数
public class scanner进阶 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a=0; float b=0.0f; System.out.println("请输入整数:"); if(scanner.hasNextInt()) {a=scanner.nextInt(); System.out.println("整数为:"+a);} else {System.out.println("你输入的不是整数而是其他数:"+a);} System.out.println("请输入小数:"); if(scanner.hasNextFloat()) {b=scanner.nextFloat(); System.out.println("小数为:"+b);} else {System.out.println("啥也不是!!"); scanner.close();} } } //注意:两个if都是作为判断,如果第一个不符合,则会直接跳转第二个判断,不会继续输入