注释: 单行注释 //
多行注释 /* */
文件注释 /** */
1 关键字
(关键字一定是小写)
2 常量
字符串常量 | "HelloWord","你好世界" |
整数常量 | 12,-33 |
小数常量 | 3.14,22.1 |
字符常量 | 'A','a' (字符常量只能是一个) |
布尔常量 | true,false |
空常量 | null(空常量不能直接输出) |
3 数据类型
和js一样也是分为基本数据类型和引用数据类型
(一)基本数据类型
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
整数 | byte | 1 | -128~127 |
short | 2 | -32768~32767 | |
int(默认) | 4 | -2的31次方~2的31次方-1 | |
long | 8 | -2的63次方~2的63次方-1 | |
浮点数 | float | 4 | 负数:-3.402823E+38~-1.401298E-45 正数:1.401298E-45~3.402823E+38 |
double (默认) | 8 | 负数:-1.797693E+308~-4.9000000E-324 正书:4.9000000E-324~1.797693E+308 | |
字符 | char | 2 | 0~65535 |
布尔 | boolean | 1 | true,false |
⚠️ 定义整数时默认为int类型,如 long num = 100000000000,这个num肯定小于2的31次方,但是编译时默认视为int类型就会报错,这时候就要在后边加个'L', long num = 100000000000L,同样的定义float时防止类型不兼容也要加'F'
4 标识符
- 由数字、字母、_、$组成
- 不能以数字开头
- 不能是关键字
- 区分大小写
5 类型转换
(一)自动类型转换
由小范围类型转到大范围类型
byte => short => int => long => float => double
char => int => long => float => double
(二)强制类型转换
由大范围类型转到小范围类型
int a = (int)88.88
System.out.println(a) // 88
会造成数据丢失,不建议使用
6 运算符
int类型 + 字符时是能计算的,但是跟js不同,js是做拼串,java是拿字符在计算机底层代表到数值进行计算
int a = 10
System.out.println(a + 'a') // 107
// 这里'a'代表97
算式中包含多个类型的值时,整个算式表达式的类型会自动提升
- byte类型、short类型、char类型会被提升到int类型
- 整个表达式的类型会自动提升到当前表达式中最高的等级同样的类型
等级顺序:byte、short、char => int => long => float => double
其他运算符跟js没区别
7 数据输入
import java.util.Scanner; // 导入Scanner工具包public class HelloWord {public static void main(String[] args) {Scanner value = new Scanner(System.in); // 创建对象int x = value.nextInt(); // 获取输入的数据System.out.println("x:" + x);}
}
// 编译运行之后在控制台输入的值就会作为x打印出来
8 Random(随机数)
import java.util.Random; // 导入Random工具包public class HelloWord {public static void main(String[] args) {Random num = new Random(); // 创建对象int x = num.nextInt(10); // 获取[0, 10)的随机数System.out.println("x:" + x);}
}