一、数据类型
java作为一种强类型的编程语言,每一个变量或常量都有其确定的数据类型。
java中的数据分为八大基本类型。其中,整型4种,浮点型2种,Unicode编码的字符类型1种,还有1种代表真值的布尔类型。
1.整型
4种整型分为字节型byte、短整型short、整型int、长整型long。其存储大小及取值范围如下图
在java中整数默认为int类型,为了区别int类型和长整型long,通常在长整型的数值后加上字母L(大小写均可)以示区别。比如,整数4000000000用长整型表示时,写做4000000000L或4000000000l。
2.浮点型
2种浮点型分为单浮点型float、双浮点型double。其存储大小及取值范围如下图
单浮点型和双浮点型的区别在于,其对于小数的表示精度不同,单浮点型的有效位数为6-7位,而双浮点型的有效位数为15位。
在java中小数默认为double类型,为了区别,通常在float型的数值后加上字母F(大小写均可),在double型的数值后加上字母D(大小写均可)。比如,小数3.14用float型表示时,写做3.14F或3.14f;用double型表示时,写做3.14D或3.14d。
3.字符型
字符型char,表示单个字符,在java中表示时需要用单引号括起来。例如,表示字符A时应写做‘A’。注意此处与字符串的不同,字符串需要用双引号括起来。
java中字符采用的是Unicode编码,每一个字符在Unicode编码中有确定的码点,即确定的代码值。例如字符‘A’,在Unicode编码中的码点为65。
4.布尔型
布尔型boolean,它的取值只有两个,true或者false,用来进行真假是否的逻辑判断。不能和整型类型进行相互转换。
最后,我们需要清楚的是,java基本数据类型的整型和浮点型占用内存的大小是固定的,不会因为程序运行平台和系统的不同而变化。这和C、C++是不同的,避免了跨平台带来的很多不便的影响因素。
二、数据类型转换
在java数据类型中,整型和浮点型都属于数值类型,可以进行数学计算。我们在编程的时候,如果进行数学运算的两个数值之间类型不同,就需要我们对数值进行数据类型的转换。
当两个运算值中有一个为double类型,则另一个也转换为double类型再进行运算;
当两个运算值中有一个为float类型,则另一个也转换为float类型再进行运算;
当两个运算值中有一个为long类型,则另一个也转换为long类型再进行运算;
当两个运算值非以上三种类型,则默认都转换为int类型再进行运算。
1.一般转换
需要注意的是,在进行数据类型转换时,由于不同数据类型的数值精度不同,转换过程中有可能会发生数值精度的丢失。
合法的数值类型转换见下图,其中实线表示无精度损失的转换,虚线表示有精度损失的转换。
2.强制转换
一般的数值类型转换都是合法的,不会出现编译错误,但是,我们不仅需要一般转换,有时也会进行一些非常规的类型转换,比如和上图中的箭头方向相反的类型转换。在java中这种类型转换称为强制类型转换,转换过程中可能会有一些信息丢失的情况发生。
在进行强制类型转换时,java中有明确的强制类型转换语法规则,如果不按照规则,则会出现编译错误。
格式:数据类型 变量名2 = (数据类型)变量名1;
例如,将double类型的数值x赋给int类型的数值y,需要将double类型强转转换为int类型。
double x = 9.88;
int y = (int)x;
三、变量
变量,顾名思义,即可以在一定范围内变化的数据。变量具有确定的数据类型。
1.变量的声明
格式:数据类型 变量名;
例如,定义整型变量i,写做
int i;
当声明多个变量,且变量的数据类型相同时,可以对变量在同一行进行统一声明,变量名之间用逗号,
分隔,比如,声明整型变量i和j,可以写做
int i,j;
不过,为了提高程序的可读性,一般不提倡这种声明方式。
需要注意,变量的声明是一句完整的代码,一定不可以省略最后的分号;
,而且数据类型和变量名之间的空格也不能落掉。
2.变量的初始化
变量的初始化就是对已声明的变量进行初始赋值。在java中没有初始化的变量是无法编译通过的。
格式:变量类型 变量名 = 变量值;
例如,对整型变量i进行初始化赋值为1,写做
int i = 1;
也可以先声明再初始化
int i;
i = 1;
四、常量
常量,即值不会发生改变的量,一旦赋值就不可以再发生改变。在java中定义常量的时候需要使用关键字final。
格式:final 常量类型 常量名 = 常量值;
比如,定义整型常量THE_FIRST_CONSTANT,其值为1。
final int THE_FIRST_CONSTANT = 1;
另外,当需要定义一个可以供类中多个方法共同使用的类常量时,需要在final关键字前再加上static关键字。
例如,定义值为1的整型类常量THE_FIRST_CONSTANT。
static final int THE_FIRST_CONSTANT = 1;
转载:https://blog.csdn.net/l1254102805/article/details/104631229