文章内容输出来源:拉勾教育大数据开发高薪训练营
一、基本概念了解:
- JVM(Java Virtual Machine):java虚拟机 --------- > 跨平台
- JRE(Java Runtime Environment):java程序的运行时环境,包含JVM和运行时所需的核心类库;
- JDK(Java Development Kit):java开发工具包,包含JRE和开发人员使用的工具;
- 三者关系:JDK > JRE > JVM
二、标识符:
1. 指在程序中自己定义的内容,如类名,方法名,变量名;
2. 命名规则:
2.1 由字母,数字,下划线,$组成,其中不能以数字开头;
2.2 不能定义为Java中的关键字,如int ,static等;
2.3 区分大小写,长度不限制但不宜过长;
2.4 见名知意,支持中文但不建议使用;
3. 命名规范:
3.1 类名:首字母大写,后面每个单词首字母大写;
3.2 方法名:首字母小写,后面每个首字母大写;
3.3 变量名:全部小写;
三、变量:
1. 变量的基本概念:
☀ 用来记录某个数据内容时,需要声明变量。
☀ 声明变量的实质:在内存中申请一个存储单元(存放的数据大小不同,声明的存储单元大小也不一样)。
2. 变量的定义规则:
☀ 一个大括号内的变量名不能重复使用;
☀ 变量定义需初始化;
四、数据类型:
1. 基本数据类型(四类八种):
a. 整数型:byte short int long ---------- 默认 int 型
b. 浮点型:float double ---------- 默认 double 型
c. 字符型:char
d. 布尔型:boolean
2. 引用数据类型:
数组、类、枚举、字符串、接口、Lambda表达式
3. 注意事项:
• 字符串不是基本类型,而是引用类型。
• 浮点型可能只是一个近似值,并非精确的值。
• 数据范围与字节数不一定相关,如float数据范围比long更加广泛,但是float是4字节,long是8字节。
• 浮点数默认类型是double。如果要使用float类型,需要加上一个后缀F或f。
• 如果是整数,默认为int类型,如果要使用long类型,需要加上一个后缀L或l。
4. 数据类型的内存占用以及取值范围:
数据类型 | 关键字 | 内存占用 | 取值范围 |
字节型 | byte | 1个字节 | -128~127(-2^7~2^7-1) |
短整型 | short | 2个字节 | -32768~32767(-2^15~2^15-1) |
整型 | int(默认) | 4个字节 | -2^31~2^31-1 |
长整型 | long | 8个字节 | -2^63~2^63-1 |
单精度浮点数 | float | 4个字节 | 1.403E-45~3.4028E+38 |
双精度浮点数 | double(默认) | 8个字节 | 4.9E-324~1.7977E+308 |
字符型 | char | 2个字节 | 0~65535 |
布尔型 | boolean | 1个字节 | true/false |
5. 转义字符:
\" -- " ; \' -- ' ; \\ -- \ ; \t -- 制表符 ; \n -- 换行符
五、数据类型转换:
1. 自动类型转换(隐式):数据范围从小到大,代码自动完成;
2. 强制类型转换(显式):代码需特殊处理。格式:int num = (int) 100L;
注意:强制类型转换有可能出现精度损失(大范围-->小范围),数据溢出;
byte,short,char可进行运算,但运算前都会被自动提升为int类型,然后在计算;如下:
byte num1 = 40;
byte num2 = 20;
byte r1 = num1 + num2; //错误; byte + byte 运算前提升为---> int + int ---> (结果)int
int r1 = num1 + num2; //正确;
short num3 = 10;
short r2 = (short)(num2 + num3) //正确; byte + short ---> int + int ---> int -->强转为short
3. ASCII码表:
记住:('0' -- 48 ; 'A' -- 65 ; 'a' -- 97 ; 空格 -- 32 ; 换行符 -- 10)
六、运算符:
+、-、*、/、%、++、--、&&、||、!、=、<<、>>、>>>、&、|、~、^
其中 + 在左右两个操作数中有一个为字符串则做字符串拼接操作;
<< n 左移n位,右边补0,相当于乘上2^n;
>> n 右移n位,左边补符号位,相当于除以2^n;
七、流程控制语句:
分支结构:if -- ; if -- else ; if -- else if -- else; switch case;
switch中可写的参数:byte,short,char,int,枚举,String
循环结构:for ; while ; do -- while ;
continue关键字:结束本次循环,直接进入下次循环;(continue后面若还有语句不执行,直接进入下层循环);
break关键字:在嵌套循环中,用来退出当前循环;若要退出外层循环,要用标号方式
outer :for (...) {
for (...) {
break outer;
}
}