zoukankan      html  css  js  c++  java
  • java--基本数据类型的转换(强制转换)

    强制类型的转换

    规则:

      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类型时,编译是报错的

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

    例如:

     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 }

    运行效果:

    小数类型的强制

    package pkg1;
    
    public class Test1{
        public static void main(String args[]){
            //小数类型转换成int
            float f= 3.4F;
            int i = (int)f;
    
            System.out.println(i);
        }
    }

     运行结果:

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

    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 }

     运行结果:

    都是可以成功转换的。

    在看字符的转换

    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码。

    运行结果:

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

     总结:

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

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

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

  • 相关阅读:
    Java 第十一届 蓝桥杯 省模拟赛 梅花桩
    Java 第十一届 蓝桥杯 省模拟赛 梅花桩
    Java 第十一届 蓝桥杯 省模拟赛 梅花桩
    Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量
    Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量
    Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量
    Java 第十一届 蓝桥杯 省模拟赛 最大的元素距离
    Java 第十一届 蓝桥杯 省模拟赛 递增序列
    Java 第十一届 蓝桥杯 省模拟赛 递增序列
    Java 第十一届 蓝桥杯 省模拟赛 最大的元素距离
  • 原文地址:https://www.cnblogs.com/xym0996/p/10663927.html
Copyright © 2011-2022 走看看