Java基础下
1.运算符
-
算数运算符:+,-,*,/,%,++,--
-
赋值运算符:=
-
关系运算符:>,<,>=,<=,==,!=,instance of
-
逻辑运算符:&&,||,!
-
位运算符:&,|,^,~,>>,<<,>>>(了解!!!)
-
条件运算符:?,:
-
扩展赋值运算符:+=,-=,*=,/=
1.1基本运算符
算数运算符示例:
package operator;
public class Demo1 {
public static void main(String[] args) {
//二元运算符
//ctrl+D:复制当前行到下一行
int a = 10;
int b = 15;
int c = 20;
int d = 25;
int e = 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(a%b);//%取余 10%15=0···10
}
}
运行结果:
package operator;
public class Demo02 {
public static void main(String[] args) {
long a = 34567899096474L;
int b = 24;
short c = 10;
byte d = 9;
System.out.println(a+b+c+d);//Long
System.out.println(b+c+d);//int
System.out.println((double)c+d);//int
}
}
运行结果如下:
关系运算符示例
package operator;
public class Demo03 {
public static void main(String[] args) {
//关系运算符返回的结果:正确、错误 布尔值
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);
}
}
运行结果如下
1.2自增自减运算符
示例:
package operator;
public class Demo04 {
public static void main(String[] args) {
//++ -- 自增,自减 一元运算符
int a = 10;
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(java中没有这样写的) 2*2*2=8
double pow = Math.pow(3,2);//很多运算,我们会使用工具来操作
System.out.println(pow);
}
}
运行结果:
1.3逻辑运算符
&& | || | ~ |
---|---|---|
与(and) | 或(or) | 非(取反) |
逻辑与运算:两个都为真,结果才为true | 逻辑或运算:两个有一个为真,结果为ture | 结果为真则变为假,结果为假,则变为真 |
注意:短路运算 a && b,如果a为假,则不会执行b
示例:
package com.hu.operator;
//逻辑运算符
public class Demo05 {
public static void main(String[] args) {
//与(and) 或(or) 非(取反)
Boolean a = true;
boolean b = false;
System.out.println("a && b: "+(a && b));//逻辑与运算:两个都为真,结果才为true
System.out.println("a && b: "+(a || b));//逻辑或运算:两个有一个为真,结果为ture
System.out.println("a && b: "+!(a && b));//结果为真则变为假,结果为假,则变为真
//短路运算 如果a && b,a为假,则不会执行b
int c = 5;
boolean d = (c < 4) && (c++ < 4);
System.out.println(d);
System.out.println(c);
}
}
运行结果
a && b: false
a && b: true
a && b: true
false
5
1.4位运算符
& | ^ ~
二进制数
A = 0011 1100 B = 0000 1101 竖着看A和B相对照的位,例:0与0,0与0,1与0,1与0 A&B = 0000 1100 //都为1是为1,否则为0 A|B = 0011 1101 //有一个为1,则为1 A^B = 0011 0001 //相同为0,不同为一 ~B = 1111 0010 //按位取反
示例:
package com.hu.operator;
public class Demo06 {
public static void main(String[] args) {
/*
A = 0011 1100
B = 0000 1101
---------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~B = 1111 0010
2*8怎么运算最快
2*2*2*2
位运算效率极高!!!
<< *2 左移
>> /2 右移
0000 0000 0
0000 0001 1
0000 0010 2
0000 0100 4
0000 1000 8
0001 0000 16
*/
System.out.println(2<<3);//输出值为16
}
}
1.5扩展赋值运算符
+=,-=,*=,/=
a+= b; 就相当于是 a = a + b; a-=b; 就相当于是 a = a - b;
a*=b; 就相当于是 a = a * b;
a/=b; 就相当于是 a = a / b;
1.6字符串连接符
+
“ ” +a+b //" "在前,此时+为字符串连接符,a与b不可以相加
a+b+" " // " "在后,此时+为正常加号,a与b可以正常相加
示例:
package com.hu.operator;
public class Demo07 {
public static void main(String[] args) {
int a = 10;
int b = 20;
a+= b;//a = a + b;
a-=b;//a = a - b;
//字符串连接符 + ,String
System.out.println(""+a+b);//""在前,a与b进行连接
System.out.println(a+b+"");
}
}
输出结果为:
1020
30
1.7三元运算符
x ? y : z 如果x == true ,则结果为y,如果结果为z
示例:
package com.hu.operator;
public class Demo08 {
public static void main(String[] args) {
//x ? y : z
//如果x == true ,则结果为y,如果结果为z
int score = 80;
String type = score <60 ?"不及格":"及格";
System.out.println(type);
}
}
2.包机制
-
为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。
-
包机制的语法格式为:
package pkg1[.pkg2[.pkg3...]];package pkg1[.pkg2[.pkg3...]];
-
一般利用公司域名倒置作为包名
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可完成此功能
import package1[.package2...].(classname|*);
导入这个包里所有的类
import com.hu.base.*;
3.JavaDoc
javadoc命令是用来生成自己API文档的
参数信息
-
@anthor 作者名
-
@version 版本号
-
since 指明需要最早使用的jdk版本
-
@param 参数名
-
@return 返回值情况
-
@throws 异常抛出情况
package com.hu.base;
/**
* @author hu
* @version 1.3
* @since 1.8
*/
public class Doc {
String name;
/**
*
* @param name
* @return
* @throws Exception
*/
public String test(String name) throws Exception{
return name;
}
}