一、注释
/**
文档注释
@author ZhanHQ
@version v1.0
**/
/*
如下的main方法是程序的入口
main的格式是固定的
*/
public class HelloWorld {
public static void main(String[] args) {
//输出HelloWorld并换行
System.out.println("HelloWorld");
}
}
文档注释可以被JDK提供的工具javadoc解析,生成一套以网页文件形式体现的该程序说明文档
javadoc -d FolderName -author -version FileName.java
一个java源文件可以声明多个class,但是只能最多有一个类声明为public,而且要求声明为public类的类名必须与源文件名相同
二、进制转换
输出后结果以十进制显示
三、原码 反码 补码
负数的补码等于他的原码自低位向高位,尾数的第一个‘1’及其右边的‘0’保持不变,左边的各位按位取反,符号位不变。
四、小数的储存
五、基本数据类型的转换
所有类型与字符串“+”拼接,结果都是字符串
六、运算符
取模(取余)只看被模数正负号
public class HelloWorld {
public static void main(String[] args) {
System.out.println(5%2);
//1
System.out.println(-5%2);
//-1
System.out.println(5%-2);
//1
System.out.println(-5%-2);
//-1
}
}
6.1 自增自减运算符
public class HelloWorld {
public static void main(String[] args) {
int b = 1;
int c = 2;
int d = b++ + ++b + ++b*c++;
System.out.println(b);
//4
System.out.println(c);
//3
System.out.println(d);
//12
}
}
6.2 赋值运算符
public class HelloWorld {
public static void main(String[] args) {
byte a = 1;
byte b = 2;
a += b;
//等价于a = (byte)(a + b)
System.out.println(a);
}
}
6.3 逻辑运算符
6.4 条件运算符
class HelloWorld {
public static void main(String[] args) {
int year = 1998;
boolean result = year%4 == 0 && year%100 != 0 || year%400 == 0;
System.out.println(year + (result? "是闰年" : "不是闰年"));
}
}
6.5 位运算符
public class Bit {
public static void main(String[] args) {
/*
4的二进制: 0000 0100
4<<3: 0010 0000
*/
System.out.println(4<<3);
//等价于4乘2的3次方
System.out.println(32>>4);
//等价于32除2的4次方
/*
-32的二进制:
原码: 1010 0000
反码: 1101 1111
补码: 1110 0000
-32>>4: 1111 1110
补码: 1111 1110
反码: 1111 1101
原码: 1000 0010
*/
System.out.println(32>>>4);
//和>>一样,左边补零
/*
-32的二进制:
原码:1000 0000 0000 0000 0000 0000 0010 0000
反码:1111 1111 1111 1111 1111 1111 1101 1111
补码:1111 1111 1111 1111 1111 1111 1110 0000
-32>>>4: 0000 1111 1111 1111 1111 1111 1111 1110
*/
}
}
6.6 运算符优先级
七、两个变量交换值
//通用方案
public class Bit {
public static void main(String[] args) {
int x = 1;
int y = 2;
int temp;
temp = x;
x = y;
y = temp;
System.out.println(x);
System.out.println(y);
}
}
//只适用于int类型
public class Bit {
public static void main(String[] args) {
int x = 1;
int y = 2;
x = x ^ y;
y = x ^ y;
x = x ^ y;
System.out.println(x);
System.out.println(y);
}
}
//只适用于int类型
//有风险,可能会溢出
public class Bit {
public static void main(String[] args) {
int x = 1;
int y = 2;
x = x + y;
y = x - y;
x = x - y;
System.out.println(x);
System.out.println(y);
}
}
八、三个变量求最大值
public class HelloWorld {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 3;
int max = a>=b ? a : b;
max = max>=c ? max : c;
System.out.println(max);
}
}