Java基础——数据类型之间的转换
Posted mukekeheart
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础——数据类型之间的转换相关的知识,希望对你有一定的参考价值。
- Java数据类型分为三大类,即布尔型、字符型和数值型。其中数值型又分为整型和浮点型。Java的基本数据类型(8种)为布尔型boolean(1字节);字符型char(2字节);整型byte(1字节)、short(2字节)、int(4字节)、long(8字节);浮点型float(4字节)、double(8字节)。此外,编程时还经常用到两种类变量,String和Date。
- Java数据类型的转换一般分三种,分别是:简单数据类型之间的转换、字符串与其他数据类型的转换、其他实用数据类型的转换。
- 简单数据类型之间的转换 在Java中,整型、实型和字符型被视为简单数据类型,这些类型由低级到高级分别为(byte、short、char)---> int ---> long ---> folat ---> double。简单数据类型之间的转换又可以分为:低级到高级的自动类型转换、高级到低级的强制类型转换、包装类过渡类型转换。
-
- 自动类型转换:低级变量可以直接转换成高级变量,这是自动类型转换。 注意:如果低级类型为char型,向高级类型转换时,会转换成对应的ASCII码值。
对于byte、short、char三种类型而言,他们是相同级别的,因此,不能相互自动转换,但是可以强制类型转换。eg:short s = 99 ; char c = (char)s ;则c表示的字符为‘c’ 。 - 强制类型转换:将高级变量转换为低级变量时,需要用到强制类型转换,这种转换可能导致溢出或精度的下降。
- 包装类过渡类型转换:Java的包装类就是可以直接将简单类型的变量表示成一个类,Java共有6个包装类,分别是Boolean、Character、Integer、Long、Float、Double,从字面上可以看出分别对应的是boolean、char、int、long、float、double。
在进行简单数据类型之间的转换(自动转换或强制转换)时,可以利用包装类进行中间过渡。一般情况下,首先声明一个变量,然后生成一个对应的包装类,就可以利用包装类的各种方法进行类型转换了。float f = 100.00f ; Float F1 = new Float(f) ; double d1 = F1.doubleValue() ;
- 自动类型转换:低级变量可以直接转换成高级变量,这是自动类型转换。 注意:如果低级类型为char型,向高级类型转换时,会转换成对应的ASCII码值。
2. 字符串与其他数据类型的转换
通过查阅类库中各个类提供的成员方法可以看出,几乎从java.lang.Object类派生出的所有类都提供了toString()方法,可以将该类转化为字符串。数据类型的包装类都可以利用toString()方法将对应的 数据转化为字符串。
3. 将字符型直接作为数字转化为其他数据类型
将字符型变量转化为数值型变量实际上有两种对应关系:一种是将其转化为对应的ASCII码值;另一种是转换关系,例如将‘4‘转化为4,而不是ASCII码值。对于第二种转换,可以使用Character的getNumericValue(char ch)方法。
以上是关于Java基础——数据类型之间的转换的主要内容,如果未能解决你的问题,请参考以下文章
Java基础(34):Java中基本数据类型的包装类(主要为了不同数据类型之间更方便的进行转换)
Android Studio NDK 入门教程--Java与C++之间的简单数据转换与传递
Java基础基本数据类型包装类int与String 之间的相互转换