Java 数据类型及类型转换的互相转换实例代码

一、基本数据类型

java的数据类型可以分为两大类:基本类型和复合类型。

基本类型:整型(int,short,long,byte)、浮点型(float,double)、布尔型(boolean)、和字符型(char)

复合类型:数组,类,接口

1.整型

各种整型数据所占空间及数的范围

数据类型 所占内存空间/位 数的范围 byte 8 -128~127 short 16 -32768~32767 int 32 -2^31~2^31-1 long 64 -2^63~2^63-1

整型以补码的形式存放在内存中。

2.浮点型

浮点类型所占的位数及数值范围

数据类型 所占内存空间/位 有效数字 数值范围 float 32 7个十进制位 约+-3.4x10^38 double 64 15~16个十进制位 约+-1.8x10^308

3.字符型

用char表示。2字节(16位)来存放一个字符,并且存放的不是ASCII码是Unicode码。

4.布尔型

用boolean表示。只有两个取值true和false。

二、常量

常量包含整型常量,浮点型常量,字符型常量,字符串常量以及布尔常量,符号常量(用final来定义 eg final int MALE = 1;)

1.整型常量

十进制(正数,负数,0),八进制(以0开头)和十六进制(以0x或0x开头)

2.浮点型常量

浮点型常量有两种表示形式。

普通的十进制数形式。由数字和小数组成。如0.123;123.0;0.0;.123;123.都是合法的

指数形式。1.5E5表示1.5x10^5;2.9E-7表示2.9x10^-7。注意字母E(也可以是小写e)之前必须有数字,且E后面的指数必须是整数。如E3,2E1.7均不合法。

java规定浮点数默认双精度,如果需要指定单精度,需要在末尾加上F或f.比如12.5F,2E5f。

三、变量

java用来表示变量名、常量名、方法名、类名的有效字符序列都成为用户自定义标识符,简称标识符。eg:int a = 1;a就是一个标识符。

变量包含整型变量,浮点型变量,字符变量,布尔型变量。

1.浮点型变量

浮点数的采用二进制方式存储的,二进制浮点数往往不能精确表示一个十进制小数,即使这个小数是一个有限小数,比如1.3,它在内存中也是一个无限小数,即可能是1.299999,也可能是1.300001。所以尽量避免直接比较两个浮点数是否精确相等。通常的方法是比较两个两个浮点数的差值是否足够接近0。

2.字符变量

将一个字符存放到字符变量中,实际上并不是把该字符本身存放到内存单元内,而是将该字符的Unicode码存放到内存单元中。比如字符‘A'的Unicode吗是0x0041,它会以二进制存储在内存中。

它的存储类型和short很相似,其实Java确实将字符变量作为无符号的短整型数据来处理的,这就决定了Java中的字符数据和整型数据之间可以通用。用户对可以对字符型数据进行算数运算,此时相当于将它的Unicode码看成一个整数进行运算。

Java规定一个局部变量在使用之前必须要初始化,否则无法通过编译。局部变量指的是定义在方法里的变量,它只有在方法里有效,在方法外无法使用。

四、数据类型转换

转换基本规则:范围小的转为范围大的,精度小的转为精度大的。按照数据转换时是否有会损失精度,Java中的转换分为扩展转换和缩减转换。

1.扩展转换

原类型 目的类型 byte short,int,long,float,double short int,long,float,double char int,long,float,double int long,float,,double long float,double float double

eg:byte+int —— int+int;int+double —— double+double

Java规定,如果两个数据类型没出现在同一行的两列,则两个数据都必须转换成同一类型,若这个目的类型有多个可以选择,则选精度,范围最小的那个。

eg: byte+char —— int+int。

扩展转换是系统自动进行的,又称自动类型转换,不会损失精度。

2.缩减转换

Java规定凡是符合下表的转换,称为缩减转换。这种转换会损失精度,系统不会自动进行,需要程序员显示地指定。

原类型 目的类型 short byte char byte,short int byte,short,char long byte,short,char,int float byte,short,char,int,long double byte,short,char,int,long,float

Java 数据类型及类型转换的互相转换实例代码

扫一扫手机访问