常量
定义:
常量是指程序中固定不变的数据。
常量分类:
整数常量:所有的整数。如 0,1,34,-28
小数常量:所有的小数。如1.4,-0.2,0.0
字符常量:单引号引用,只能写一个字符,必须有内容。如‘a’,‘ ’(空格),‘咦’
字符串常量:双引号引用,可以写多个字符,也可以不写。如"",“Hello”,‘啊啊啊’’
布尔常量:只有两个值—— true,false
空常量:只有一个值——null
package demo01;
public class Constant {
public static void main(String[] args) {
// 整数常量
System.out.println(123);
// 小数常量
System.out.println(0.123);
// 字符常量
System.out.println('a');
// 布尔常量
System.out.println(true);
// 字符串常量
System.out.println("AAAAAA");
}
}
变量
定义
程序中可以变化的量称为变量。
语法
数据类型 变量名 = 数据值;
数据类型
JAVA的数据类型分为
- 基本数据类型:整数、浮点数、字符、布尔。
- 引用数据类型:类、数组、接口。
基本数据类型(四类八种)
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
字节型 | byte | 1个字节 | -128 ~ 127 |
短整型 | short | 2个字节 | -32768 ~ 32767 |
整型 | int(默认) | 4个字节 | -231 ~ 231-1 |
长整型 | long | 8个字节 | -263 ~ 263-1 |
单精度浮点数 | float | 4个字节 | 1.4013E-45 ~ 3.4028E38 |
双精度浮点数 | double(默认) | 8个字节 | 4.9E-324 ~ 1.7977E+308 |
字符型 | char | 2个字节 | 0 ~ 65535 |
布尔类型 | boolean | 1个字节 | true,false |
package demo01;
public class Variable {
public static void main(String[] args) {
// 字节型变量
byte b =127;
// 短整型变量
short s = 23561;
// 整型变量
int i = 3333;
// 长整型变量
long l = 400000L;
// 单精度浮点数
float f = 3.14159F;
// 双精度浮点数
double d = 54.523;
// 字符型变量
char c = 'W';
// 布尔型变量
boolean bool = true;
}
}
数据类型转换
- 自动转换:将“取值范围小的类型”自动提升为“取值范围大的类型”,即 低类型向高类型自动转换。
- 强制转换:将“取值范围大的类型”强制转换成“取值范围小的类型”,即 高类型向低类型强制转换。
package demo01;
public class Variable {
public static void main(String[] args) {
// 字节型变量
byte b =127;
// 短整型变量
short s = 23561;
// 整型变量
int i = 3333;
// 长整型变量
long l = 400000L;
// 单精度浮点数
float f = 3.14159F;
// 双精度浮点数
double d = 54.523;
// 字符型变量
char c = 'W';
// 布尔型变量
boolean bool = true;
// 低类型向高类型的自动转换
System.out.println("累加bype等于:"+ b); // 累加bype等于:127
System.out.println("累加char等于:"+ (b+c)); // 累加char等于:214
System.out.println("累加short等于:"+ (b+c+s)); // 累加short等于:23775
System.out.println("累加int等于:"+ (b+c+s+i)); // 累加int等于:27108
System.out.println("累加long等于:"+ (b+c+s+i+l)); // 累加long等于:427108
System.out.println("累加float等于:"+ (b+c+s+i+l+f)); // 累加float等于:427111.16
System.out.println("累加double等于:"+ (b+c+s+i+l+f+d)); // 累加double等于:427165.67925
// 高类型向低类型的强制转换
System.out.println("把long强制类型转换为int:"+(int)l); // 把long强制转换为int:400000
// 高类型到低类型转换会丢失数据
System.out.println("把int强制类型转换为short:"+(short)l); // 把int强制类型转换为short:6784
// 实数到整数转换将舍弃小数部分
System.out.println("把double强制类型转换为int:"+(int)d); // 把double强制类型转换为int:54
// 整数到字符类型的转换将获取对应编码的字符
System.out.println("把short强制类型转换为char:"+(char)s); // 把short强制类型转换为char:尉
}
}
编码表示例
字符 | 数值 |
---|---|
0 | 48 |
9 | 57 |
A | 65 |
Z | 90 |
a | 97 |
z | 122 |