运算符
-
算数运算符:+,-,*,/,%(取余,模运算符),++,--
-
赋值运算符:=
-
关系运算符:>,<,>=,<=,==,!=,instanceof
-
逻辑运算符:&&,||,!
-
位运算符:&,|,^,~,>>,<<,>>>
-
条件运算符:?:
-
扩展赋值运算符:+=,-=,*=,/=
//二元运算符
int a = 10;
int b = 20;
int c = 25;
int d = 30;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);
System.out.println(c%a);
long a = 12313131313L;
int b = 123;
short c = 10;
byte d = 8;
//运算时有Long,结果为Long,无Long,结果为Int
System.out.println(a+b+c+d);//Long
System.out.println(b+c+d);//Int
System.out.println(c+d);//Int
//关系运算符结果:true,false
int a = 10;
int b = 20;
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
//与(and),或(or),非(取反)
boolean a = true;
boolean b = false;
System.out.println("a && b:" + (a && b));//逻辑与运算(短路与):两个变量都为真,结果才为真
System.out.println("a || b:" + (a || b));//逻辑或运算(短路或):两个变量有一个为真,结果为真
System.out.println("!(a && b):" + !(a && b));//如果是真,则变为假,如果是假,则变为真
//短路运算
int c = 5;
boolean d = (c<4)&&(c++<4);//c<4为false,此时短路,后面c++不执行
System.out.println(d);
System.out.println(c);
//++自增,--自减,一元运算符
int a = 3;
int b = a++;//执行完代码后,先赋值给b,再自增
//a=a+1
System.out.println(a);
//a=a+1
int c = ++a;//执行完这行代码前,先自增,再赋值给c
System.out.println(a);
System.out.println(b);
System.out.println(c);
//幂运算2^3=2*2*2=8
double pow = Math.pow(2, 3);
System.out.println(pow);
/*
位运算,效率极高
A=0011 1100
B=0000 1101
----------------------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~B = 1111 0010
2*8 = 16 = 2*2*2*2
<<左移
>>右移
0000 0000=0
0000 0001=1
0000 0010=2
0000 0011=3
0000 0100=4
0000 1000=8
0001 0000=16
*/
System.out.println(2<<3);
int a = 10;
int b = 20;
a += b;//a = a + b
System.out.println(a);
a -= b;//a = a - b
System.out.println(a);
//字符串连接符+,String
System.out.println(a+b+"");
System.out.println(""+a+b);
//三元运算符
//x ? y : z
//如果x==true,则结果为y,否则结果为z
int score = 80;
String type = score < 60 ? "不及格" : "及格";
//if
System.out.println(type);
包机制
-
为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
-
包语句的语法格式为
package pkg1[. pkg2[. pkg3]];
-
一般利用公司域名倒置作为包名:com.LYF.xxx
-
为了能够使用一个包的成员,我们需要在Java程序中明确导入该包。
import package1[.package2].(classname|*);
JavaDoc
-
参数信息
-
@author 作者名
-
@version 版本号
-
@since 指明需要最早使用的jdk版本
-
@param 参数名
-
@return 返回值情况
-
@throws 异常抛出情况
-
通过IDEA生成JavaDoc文档