欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java数据类型转换总结

程序员文章站 2022-07-12 16:51:00
...

基本数据类型转换

基本转换规则
  1. 八种基本数据类型当中出boolean类型之外剩下的其中类型之间都可以相互转换
  2. 小容量向大容量转换,称为自动类型转换。容量从小到大排序:
    byte < short < int < long < float < double
       char <

java数据类型转换总结

  1. 大容量转换为小容量,叫做强制类型转换,需要加强制类型转换符。例如:
float num1=123f;
int num2=(int) num1;
  1. 当整数字面值没有超过byte,short,char的取值范围,可以直接赋值类byte,short,char类型的变量
  2. byte,short,char混合运算的时候,各自先转换成int类型再做运算
  3. 多种数据类型混合运算,先转换成容量最大的那种类型再做运算

基本数据类型的长度表:

基本类型 字节数(byte) 位数(bit) 取值范围(最小值——最大值)
byte 1 8 -128(-2^7) —— 127(2^7-1)
short 2 16 -32768(-2^15)—— 32767(2^15 - 1)
int 4 32 -2^31—— 2^31 - 1
long 8 64 -2^63 —— 2^63 -1
float 4 32 单精度、32位、符合IEEE 754标准的浮点数
double 8 64 双精度、64 位、符合IEEE 754标准的浮点数
char 2 16 0——2^16-1(65,535)

包装类(Wrapper Class)与基本数据类型的

基本数据类型与其相对应的包装类:

基本数据类型 包装类
byte Byte
boolean Boolean
short Short
char Character
int Integer
long Long
float Float
double Double
  1. JDK1.5提供了自动装箱(autoboxing)和自动拆箱(autounboxing)功能, 从而实现了包装类和与其对应基本数据类型之间的自动转换

另外,对于特殊的“String”

  1. 基本类型变量—>String.valueof()—>字符串
  2. 字符串—WrapperClass.parseXxx(string)—>基本类型变量()
    例如:String转int:Integer.parseInt(str)

验证代码:

/**
 *数据类型转换
 * 2020年6月15日22:04:35
 */
public class DataTypeConversion {
    public static void main(String[] args) {
        System.out.println("基本数据类型之间的转换");
        byte by=12;//12默认是int类型,这里使用了第四条准则
        //byte by2=10000;//错误演示,超出了byte的表示范围
        byte by3=(byte)10000;//强转会出现精度损失,造成数据出错
        float num=123;//这里代表的是自动类型转换
        float num1=123f;
        int num2=(int) num1;
        System.out.println(by);
        System.out.println(by3);
        System.out.println(num2);

        
        System.out.println("包装类与基本数据类型的转换");
        Integer i=3;//3为int型,自动装箱为Integer
        int i1=i;//自动拆箱
        System.out.println(i.getClass());
        System.out.println(i1);

        
        System.out.println("基本数据类型(包装类)与String");
        String str="10";
        System.out.println(Integer.parseInt(str));//String--->int

        String str2="true";
        System.out.println(Boolean.parseBoolean(str2));//String--->boolean

        String s = String.valueOf(by);
        System.out.println(s.getClass());//byte--->String

        String s2 = String.valueOf(true);
        System.out.println(s2);//boolean--->String
    }
}

结果截图:
java数据类型转换总结

个人总结,若是有不足之处,请与下方评论指正