为了能让计算机识别和有效的使用数据,需要将这些数据加以类别区分。在程序设计中,使用数据类型来标识一个数据是属于哪个类别的,且实现事物各种属性的数据都能找到与之匹配的类型。在 Java 中,数据类型可划分为简单类型和复合类型。
(1)简单类型:
2.浮点类型: 有小数部分的数为数为浮点类型数据,如255.0,1024.11,-10.00f 等,根据占用内存容量分为 float 和 double 两种。 在数据后加f 和 F 表示 float 型,加 d 或 D 表示该数据为 double 型,默认数据为 double 型。
3.字符类型: char,用一对单引号括起来的单个字符,如 ’A‘ ’l‘ ’a‘
等,对于被系统所占用的一些字符,在程序中若要用到,必须使用转义字符 “\” 来完成。转义字符
如表 2-2 所示。
转义字符 | 名称 | 转义字符 | 名称 |
---|---|---|---|
\n | 换行 | \ | 反斜杠 |
\b | 退格 | " | 双引号 |
\r | 回车 | ’ | 单引号 |
\t | 制表 |
复合类型: 复合类型包括类(class)和接口(interface)。
在程序运行中,数据必须进入内存空间才能得到运算的机会,然而怎样去定义一个内存空间呢? 在内存管理上这是用地址来完成的,但在程序设计中,用内存地址来操作数据是很不方便的,因此可给该内存空间一个别名以方便记忆和使用。这一别名即可用做变量和常量。变量和常量的类型是与数据类型相对应的,即一个变量或常量仅是属于某一种数据类型的。
(1) 常量
常量是指在程序执行过程中其值不可发生变化的量。常量可分为整型常量,浮点数常量,字符常量,字符串常量和布尔常量。
声明常量的格式如下:
final 类型 常量名[,常量名] = 常量值,----------;
实例:
final String title1 = “尊敬的顾客,您这次的消费清单明细表如下:”;
final String title2 = " 名称 单价 数量 单项总计";
(2) 变量
public class TestRange {
public static void main(String[] args) {
int x = 12; // 定义变量 x
int y; // 定义变量y
{
int q = 96; // x 和 q 都可用
int x = 3; // 错误对的定义,Java 中不允许有这种嵌套定义
System.out.println("x is" + x);
System.out.println("q is " + q);
System.out.println("y is " + y); // 未给初值
}
q = x; // q 不可用
int y = 0; // 重复定义 y,不正确
System.out.println("x is " + x); // x 可用
}
}
整型、实型和字符型数据可以混合运算。在运算过程中,不同的类型数据要先转换为同一类型的数据才能进行运算,其转换规则如下表:
原始类型 | 目标类型 | 原始类型 | 目标类型 |
---|---|---|---|
Byte | short,char,int,long,float,double | int | long,float,double |
Short | int,long,float,double | long | float,double |
char | int,long,float,double | float | double |
以上转换不会产生数据信息的丢失。
反向强制转换,但数据信息会因为存储位数的缩小而丢失,导致数据不正确。