JAVA笔记
----------------------------------第一章JAVA注释、数据类型
----------------------------------2018.11.16
1.三种注释
(1)单行注释//
(2)多行注释/ * * /
(3)文档注释/** */
利用javadoc命令可以生成文档,便于查阅。(变量说明,返回值说明)
2.标识符
(1)Java是一种强类型语言:
- 所有变量都需要先声明,后使用
- 指定类型的变量只能装指定类型的变量
强类型语言可以在编译时进行严格的语法检查,从而减少编程错误。C/C++支持自动强制类型转换,会导致程序的不安全。
(2)标识符
变量是一个“容器”,用来装数据。标识符,即名字。
标识符可以由字母(英文、中文、日文、韩文)、数字、下划线(_)和$组成。其中,数字不能开头。不能是Java的关键字或保留字。
java共有50个关键字(均为小写),其中包括2个保留关键字(goto、const)。
直接量:true、false、null。
所以,共有53个单词不能用来作为标识符。
- static
使用情况:成员变量、成员方法、代码块、内部类
作用:第一,为某特定数据类型或对象分配单一的存储空间;第二,实现某个方法或属性与类关联在一起(而不是对象,使其可以通过类名调用,无须创建对象来调用)。
break:跳出当前循环,不再执行剩余代码。跳出多层循环,可以使用标识。
continue:停止当次循环,进入下一次循环。
return:跳转语句,从一个方法返回(返回值或其他复杂类型);当执行main方法时,return语句可以使程序执行返回Java运行系统。
3.数据类型
数据类型可以分为基本数据类型和引用数据类型。
(1)封装类
Java语言提供了对这些基本数据类型的封装类(数值类型:Byte、Short、Integer、Long、Float、Double,字符类型:Character,布尔类型:Boolean)。Java中的数值类型都是有符号的,取值范围固定。Java中还存在另一种基本类型void,对应封装类为java.lang.void,但是无法对它进行操作。
(2)自动转换和强制转换
-
自动转换
Java中的7种基本数据类型都支持自动转换,范围小的可以自动转换成范围大的。
byte->short->int->long->float->double
char->int->long->float->double -
强制转换
在Java中,默认声明的整数是int,如果为long的变量赋值时,需要后加一个L/l或在之前加上(long)进行强制转换;默认声明的小数是double,如果为float的变量赋值时,需要后加一个F/f或进行强制转换(float)。
-
表达式自动提升
编译时计算,在满足范围内,允许。
自动转换成表达式中精度最大的类型。
-
溢出
(3)数值类型
-
整数
表示方法:二进制(0b)、八进制(O)、十进制、十六进制(0x) -
浮点数
编程时尽量使用double类型,浮点数都有精度丢失的问题,使用float丢失更严重。
因为浮点数的精度丢失问题,因此比较时使用“差值法”进行比较。
三个特殊:正无穷大、负无穷大、非数。非数:NAN(not a number)非数与任何数都不相等,与自身也不相等。
e.g 浮点数0除以0的时候、对负数开方 -
字符型(Unicode16)
只能装单个字符(对比String字符串),单引号,可当做无符号整数使用(使用该字符的编号);
ASCII:英文、数字、标点符号
(A-Z:65-90;a-z:97-122;0-9:48-57)
GB2312:简体中文字符集
GBK:简体中文字符集
GB18030:目前的简体字符集