• 12.JAVA-基本数据类型的包装类操作


    1.基本数据类型的包装类

    java是一个面向对象编程语言,也就是说一切操作都要用对象的形式进行.但是有个矛盾:

    • 基本数据类型(char,int,double等)不具备对象特性(不携带属性和方法)

    这样非面向对象的基本数据类型,由于没有附带对象方法,比如没有toString(),则会给用户带来非常不便.

    所以从JDK1.0开始,JAVA专门给出了8种基本数据类型的包装类,如下所示:

    类型

    基本数据类型名

    对应的包装类名

    布尔型

    boolean

    Boolean

    字符型

    char

    Character

    短整型

    short

    Short

    整型

    int

    Integer

    长整型

    long

    Long

    单精度浮点型

    float

    Float

    双精度浮点型

    double

    Double

     

    2.包装类之String转换操作

    在基本数据类型的8个包装类中,一共有7个类都定义了XXX(String s)构造方法和parseXxx(String s)方法,它们功能就是实现将字符串变为指定XXX类型的数据,只有Character类没有,因为它本身就是字符类,

    并且所有包装类,都实现了toString()方法

     

    3.包装类的装箱和拆箱操作

    • 装箱操作 : 将基本数据类型变为包装类
    • 拆箱操作 : 将包装类中的数据取出到基本数据中

    Ps: java包装类提供自动装箱和自动拆箱机制,能够直接对包装类对象进行数学计算

    示例-double与Double之间的操作

             //手动装箱
             Double obj1 = new Double("1.234");
             Double obj2 = new Double(1.234);
    
             System.out.println(obj1.equals(obj2));    //打印true
             System.out.println(obj1==obj2);           //打印false,因为obj1和obj2的地址不同
             System.out.println(obj1*2);               //直接进行数学计算, 打印2.468
    
             //自动装箱
             Double obj3 = 12.3;                         //等价于Double obj2 = new Double(12.3);
    
             //自动拆箱
             double d = obj3;                      //d = 12.3
    
             //手动拆箱
             d = obj3.doubleValue() ;         //d = 12.3

    4.利用Object类来接收所有包装类

    由于包装类的超类都是Object,所以我们可以通过Object参数,便能实现所有包装类的一致性

    示例如下:

    public class Test
    {
             public static void print(Object obj)  //打印所有包装类的信息
             {
                      System.out.println(obj.toString());
             }
    
             public static void main(String args[]){
                      Boolean obj1 = true;
                      Integer obj2 = 10;
                      Double  obj3 = 1.234;
               
                      print(obj1);
                      print(obj2);
                      print(obj3);
             }
    }

    未完待续

  • 相关阅读:
    JS 拖动(验证码)滑块
    如何配置WebStorm开发Chrome插件项目
    常用Linux命令备查
    Vim常用快捷键汇总
    常用SQL语句备查
    Maven应用常见问题
    postgresql 关联表修改
    postgis坐标转换
    Geoserver自动发布服务
    GeoServer修改端口号
  • 原文地址:https://www.cnblogs.com/lifexy/p/10848445.html
Copyright © 2020-2023  润新知