数据类型
-
四种整数类型(byte、short、int、long):默认类型是int。
整数类型表示范围由小到大的排序是byte<short<int<long。
与C语言不同分是,long类型在表示的时候应在末尾加“L/l”作为标志,由于l与1难以区分,一般使用”L“。
-
两种浮点数类型(float、double)
浮点数类型表示范围由小到大的排序是float<double。
与C语言不同分是,float类型在表示的时候应在末尾加“F/f”作为标志。
-
一种字符类型(char)
-
一种布尔类型(boolean):true (真) 和 false (假)
数据类型拓展
-
整数的表示又分为二进制、八进制、十进制、十六进制
二进制在表示数字前加上0b作为标识符,例如520->0b1000001000。
八进制在表示数字前加上0作为标识符,例如520->01010。
十六进制在表示数字前加上0x作为标识符,例如520->0x280。
-
浮点型在运算中如果遇到较大的数字会溢出,在某些应用场景下(例如银行),我们不建议使用浮点型,而是使用Java为我们提供的BigDecimal类型。
-
浮点型在保存的时候会有精度偏差,因为在计算机的存储中浮点数是接近但不等于它应该保存的值,所以建议大家最好完全避免浮点数比较。
-
字符型与C语言类似,也是通过编码的形式保存,Unicode编码表大约有65536个字符,
-
转义字符与C语言类似,常见的有"\n" (换行符,等效于“Enter”) 和 “\t” (制表符,等效于“Tab”)。
-
字符串分为字符串对象和字符串常量。
类型转换
-
强制转换
与C语言相同,转换的格式是(类型)变量,但是会造成数据丢失,例如1.1转换成int型之后会变成1丢失0.1,这个方法可以用来对小数取整。
与C语言不同,char与int不能直接互用,需要强制转换。
强制转换肯会产生错误,例如将128转换为byte会产生错误。
不能对布尔类型进行转换。
-
自动转换
当两个运算数据的类型不一致的时候,会先将级别较低的转换为级别较高的再做运算。
级别由低到高分别是:
byte–>short–>int–>long–>float–>double
char–>int(char只能和int相互转换)由高等级向低等级转换只能强制转换。
变量
变量分为局部变量、类变量、实例变量。
- 局部变量为定义在方法里面的变量,作用域为包裹它的最近的一对大括号。
- 类变量是属于类本身的,需要在变量前面加 “static” 关键字声名。
- 实例变量是属于类对象,在手动赋值前Java默认赋值 “0/0.0/NULL”。
- 在某些环境下我们会用到一些变量,但这些变量不会修改,我们一般作为常量,在变量类型前加 “static final”关键字声名。
命名规范要求:
- 所有变量、方法、类名:见名知意:employee。
- 类成员变量:首字母小写和驼峰原则:monthSalary。
- 局部变量:首字母小写和驼峰原则。
- 常量:大写字母和下划线:HIGHEST_SALARY。
- 类名:首字母大写和驼峰原则:Company。
- 方法名:首字母小写和驼峰原则:recruitEmployees。
运算符
-
基本运算符包括 算术运算符、赋值运算符、关系运算符三类。
算数运算符包括 “+ - * / %”,与C语言使用方法相同。
赋值运算符是 “=”",与C语言使用方法相同。
关系运算符包括 “> >= < <= == != instanceof”,前六个与C语言使用方法相同。
-
自增自减运算符与C语言相同。
-
逻辑运算符、位运算符与C语言相同。
-
三元运算符与C语言相同。
包机制
一般将公司域名倒置作为包名。
如果需要引入包中文件,应该使用 “import” 语句,引入语句放在 "package"语句和类定义之前。
引入一个包不会引入包中子包。
JavaDoc生成文档
Java的文档注释可以帮助我们生成类和方法的相关信息,通过javadoc命令帮助我们生成自己的API文档。
使用方式为使用命令行在目标文件所在目录输入javadoc +文件名.java,在编译的时候使用UTF-8编码方式可以减少乱码的可能性。
本文完成于2020年5月22日20:58:35,是对于观看完秦疆老师Java视频的理解和总结。