• 包装类、Object类——Java笔记(八)


    包装类:
        基本数据类型的包装类    
    基本数据类型
    包装类
    byte
    Byte
    short
    Short
    int
    Integer
    long
    Long
    char
    Character
    float
    Float
    double
    Double
    boolean
    Boolean

     

     

     

     

     

     

     

     

     

    基本数据类型包装类除了Character类之外,其他7个都有两个构造方法

            一个构造方法传参传的是基本数据类型本身
            另一个构造方法传参传的是String类型的,而Character少的就是这一个,即public Character(String c){};
     
    包装类Boolean操作时
            Boolean b =  new boolean("TRUe");//里面传参除了TRUE之外且不区分大小写,其他的都默认是FALSE ;
     
    包装类转基本类型:
            调用基本数据类型value()方法
    例:
        Integer   a  =  new Integer();
        //把   Integer包装类调用intvalue()就成功的转成int数据类型
        int  b  = a.intvalue();  
     
    基本类型转包装类:
            直接new其包装类就
    例:
      Integer   a  =  new Integer(16);
    Java5开始提供了包装类转基本类型、基本类型转包装类的功能
       基本类型转包装类
                    可以把一个基本数据类型的值直接赋给其包装类对象
    例:
            Integer  a  = 16;
        包装类转基本类型
                    可以把一个包装类对象直接赋给一个基本数据类型的变量
            int b = a;
    Integer的值相等么?
      1.当赋值情况如下时:
             Integer   a  =  new Integer(16);
             Integer   a2   =  new Integer(16);
            System.out.println("a1 == a2 " + (a1 == a2)); //false
           如果用这种创建对象的模式那么integer的值就不想等,因为他们是两个对象
      2.如果用Java5的新特性:
              Integer   a  =  16;
              Integer   a2   =  16;
              System.out.println("a1 == a2 " + (a1 == a2)); //true
          如果用这种模式那么它们的只是相等的,不过它们的值只有在这个[-128,127]区间内才相等
       byte,short,int,long它们的缓存区间都一样[-128,127];
    类型转换:
        String --------->  int   
        static int parseInt(String s); 
        可以使用parseInt(String s)方法,该方法作用是将字符串参数作为十进制整数进行解析
     1  //string ------> int
     2   int i = Integer.parseInt("0012");
     3   System.out.println("string ------> int"+"	"+i);
     4  
     5   //int ------> string    Integer类   static String toString(int i); 
     6   //String类 public static String valueOf(int i)
     7   //利用toString(int i),valueOf(int i)方法可以实现int ------> string
     8  
     9 
    10   String s = Integer.toString(i);
    11   System.out.println("int ------> string"+"	"+s);
    12 
    13     int i1 = 123;
    14   System.out.println("int ------> string"+"	"+String.valueOf(i1));
    Object类
        所有父类的公共父类,一旦一个类没有显示地继承一个类则其直接父类一定是object,所有对象(包括数组)都实现这个类的方法
        一切数据类型都可以用object接收
    常见方法:
            boolean  equals(Object obj)指示他某个对象是否与此对象相等
                equals默认比较的是堆里面的地址,与==一样,都是比较地址
                ==用于判断两个变量是否相等 必须指向同一个对象才是TRUE,只能比较有父子或平级关系的两个对象
     1   System.out.println(new Integer(1).equals(new Integer(1))); //true
     2           // 因为integer比较的是值,integer类重写了父类object类的equals方法
     3             //integer类重写后的方法equals方法
     4               public boolean equals(Object obj){
     5    if(obj instanceof Integer){
     6     return value == ((Integer)obj).intValue();
     7    }
     8    return false;
     9                   }
    10             System.out.println(new Object().equals(new Object())); //false            
    11         //其他的还有String类也重写了equals()方法
    12         int hashCode() // 返回该对象的哈希码值,每个对象的hashCode值不一样
    13      
    14         System.out.println(new Object().hashCode());//1599065238
    15        System.out.println(new Object().hashCode()); //1879096508
      String toString()   返回该对象的字符串表示
                以字符串的形式描述了对象的状态
            当你直接打印某个对象的时候默认的就调用了toString()方法
  • 相关阅读:
    万字攻略,详解腾讯面试
    百度广告产品系统级测试技术演进
    TAR部署MYSQL(1)
    RPM部署MYSQL
    大数据学习之Linux(3)
    大数据学习之linux(2)
    大数据学习之linux(1)
    pycharm安装与破解
    Dijkstra—校园景点游览问题
    哈夫曼编译码器
  • 原文地址:https://www.cnblogs.com/Essence/p/3975991.html
Copyright © 2020-2023  润新知