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

java--基本数据类型的转换(强制转换)

程序员文章站 2023-08-18 18:41:28
强制类型的转换 规则: 1、执行算术运算时,低类型(短字节)可以转换为高类型(长字节);例如: int型转换成double型,char型转换成int型等等。 就是用强制类型来实现。 3、强制类型转换语法 :当大容量的变量向小的变量的类型去转换时需要强制转换 。 (目标类型) 值; 当我的int类型转 ......

强制类型的转换

规则:

  1、执行算术运算时,低类型(短字节)可以转换为高类型(长字节);例如: int型转换成double型,char型转换成int型等等。

就是用强制类型来实现。

  3、强制类型转换语法 :当大容量的变量向小的变量的类型去转换时需要强制转换 。    (目标类型) 值;

 1 package pkg1;
 2 
 3 public class test1{
 4     public static void main(string args[]){
 5 
 6         int i = 10;
 7         
 8         byte b = i ;
 9         system.out.println(b);
10             
11     }
12 }

当我的int类型转换成byte类型时,编译是报错的

java--基本数据类型的转换(强制转换)

我们应该强制类型转换一下 在赋值是写上你需要强制的目标类型

例如:

java--基本数据类型的转换(强制转换)

 1 package pkg1;
 2 
 3 public class test1{
 4     public static void main(string args[]){
 5 
 6         int i = 10;
 7         
 8         byte b = (byte) i ;
 9         system.out.println(b);
10             
11     }
12 }

 定义一个long类型 我要转换成int类型  语法上是一样的

 1 package pkg1;
 2 
 3 public class test1{
 4     public static void main(string args[]){
 5         //long类型转换成int类型
 6         long l = 10000;
 7         int j = (int)l;
 8         system.out.println(j);
 9             
10     }
11 }

运行效果:

java--基本数据类型的转换(强制转换)

 

小数类型的强制

package pkg1;

public class test1{
    public static void main(string args[]){
        //小数类型转换成int
        float f= 3.4f;
        int i = (int)f;

        system.out.println(i);
    }
}

 运行结果:

java--基本数据类型的转换(强制转换)

可以看到小数类型转换成整数,小数点后面的数就没有了。

 

double类型转换float类型

 1 package pkg1;
 2 
 3 public class test1{
 4     public static void main(string args[]){
 5         //double类型向float类型转换
 6         double d = 33.45;
 7         float f = (float)d;
 8 
 9         system.out.println(f);
10     }
11 }

 运行结果:

java--基本数据类型的转换(强制转换)

都是可以成功转换的。

 

在看字符的转换

package pkg1;

public class test1{
    public static void main(string args[]){
        //字符转换
        char c ='a';
        int x = c;
        system.out.println(x);
        
        int y = 98;
        char c1 = (char)y;
        system.out.println(c1);
    }
}

 在上个随笔中有说到char类型的自动转换int类型是显示ascii码,同时我也可以强制类型转换成ascii码。

运行结果:

java--基本数据类型的转换(强制转换)

98是ascii的b,所以int类型可以强制成char类型。

 

 总结:

1,数值类型的转换前提要保证精度不会损失的情况下才可以强制转换

2,小数转换成整数,就是把小数点后面的数给去掉。

3,boolean类型的数据不能转换为其他任何基本数据类型。