关键字
是指在程序中,Java已经定义好的单词,具有特殊含义。
标识符
是指在程序中,我们自己定义内容。比如类的名字、方法的名字和变量的名字等等,都是标识符。
命名规则:
- 标识符可以包含 英文字母26个(区分大小写) 、 0-9数字 、 $(美元符号) 和 _(下划线) 。
- 标识符不能以数字开头。
- 标识符不能是关键字。
常量
在程序运行过程中,固定不变的量。
变量
程序运行过程中,内容可以发生改变的量。
格式:
数据类型 变量名称 = 数据值;
注意:
- 如果创建多个变量,变量之间的名称不可以重复;
- 对于float 和long类型来说,字母后缀F和L不要丢掉;
- 如果使用byte或short类型的变量,那么右侧的数据值不能超过左侧类型的范围;
- 没有进行赋值的变量,不能直接使用,一定要赋值后才能使用;
- 变量使用不能超过作用域(从定义变量的一行开始,一直到所属的大括号结束为止)的范围。
基本数据类型
1.整型(int、long、byte、short)
- int(4字节=32位)
代码演示:
int a=10;
取值范围:-2^31 — 2^31-1
代码演示
public class Test2 {
public static void main(String[] args) {
System.out.println("最大值:"+Integer.MAX_VALUE);
System.out.println("最小值:"+Integer.MIN_VALUE);
}
}
运行结果
注:
- 在Java中,一个int变量占4个字节,和操作系统没有直接关系。
- long(8字节=64位)
代码演示
long b=100000L;
取值范围-2^63 — 2^63-1
代码演示
public class Test2 {
public static void main(String[] args) {
System.out.println("最大值:"+Long.MAX_VALUE);
System.out.println("最小值:"+Long.MIN_VALUE);
}
}
运行结果
注:
- 主要使用在需要比较大整数的系统上。
- byte(1字节=8bit)
代码演示:
byte c=100;
取值范围:-2^7 — 2^7-1
代码演示
public class Test2 {
public static void main(String[] args) {
System.out.println("最大值:"+Byte.MAX_VALUE);
System.out.println("最小值:"+Byte.MIN_VALUE);
}
}
运行结果
注:
- byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一。
- short(2字节=16位)
代码演示:
short d=1000;
取值范围:-2^15 — 2^15-1
代码演示
public class Test2 {
public static void main(String[] args) {
System.out.println("最大值:"+Short.MAX_VALUE);
System.out.println("最小值:"+Short.MIN_VALUE);
}
}
运行结果
注:
- short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一。
2.浮点型(float、double)
- float(4字节=32位)
代码演示:
float f=10.3f;
注:
- float数据类型是单精度、32位、符合IEEE 754标准的浮点数;
- float在储存大型浮点数组的时候可节省内存空间;
- 浮点数不能用来表示精确的值,如货币。
- double(8字节=64位)
代码演示:
double d1=100.4;
在代码中不应该使用==判断浮点数是否相等。
- 正确做法
针对两个要比较的数字进行做差,看得到的差值是否小于预期的误差范围,如果小于误差,就可与近似认为相等。
例如
两个浮点数相乘判断结果是否与手动计算相等:
double a=1.1;
double b=1.1;
if(a*b-1.21<0.000000001 && a*b-1.21>-0.000000001){
System.out.println("相等");
}else{
System.out.println("不相等");
}
注:
- double数据类型是双精度、64位、符合IEEE 754标准的浮点数;
- 浮点数的默认类型为double类型;
- double类型同样不能表示精确的值,如货币;
- 表示小数的时候,优先使用double。
3.字符类型(char)
- char(2字节=16位)
代码演示:
char c1='A';
注:
- Java中不允许把char和整数之间混淆使用;
- char数据类型可以储存任何字符;
- Java中使用单引号 + 单个字母的形式表示字符字面值;
- 计算机中的字符本质上是一个整数。在C语言中使用ASCll表示字符,而Java中使用Unicode表示字符。因此一个字符占用两个字符,表示的字符种类更多,包括中文;
- 使用一个字符表示一个汉字。
4.布尔类型(boolean)
- boolean
代码演示:
boolean i=true;
注:
boolean数据类型表示一位的信息;
只有两个取值:true和false;
这种类型只作为一种标志来记录true/false情况;
默认值是false。