zoukankan      html  css  js  c++  java
  • java-----基本数据类型包装类

    目的:为了方便操作基本数据类型值,将其封装为对象,在对象定义了属性和行为,丰富了改数据的操作,用于描述该对象的类也就成为基本数据类型对象包装类。

    例如:int类型的取值范围:Integer------>Integer.MAX_VALUE

    8种数据类型包装类:

    byte ——Byte
    short ——Short
    int ——Integer
    long-----Long
    float-----Float
    double----Double 
    char----Character
    boolean---Boolean
     
    该包装对象主要用于基本数据类型和字符串之间的转换,
    基本数据类型->字符串的三种方式:
    (1)基本数据类型值+""
    (2)使用Interger的静态方法:static String toString(基本数据类型值)
    (3)使用String类的静态方法static String valueOf(基本数据类型值)
    字符串->基本数据类型
    (1)使用包装类中的静态方法 XXX parseXXX(XXX类型字符串)
      int parseInt(int型字符串);
      long parseLong(Long型字符串);
      boolean parseBoolean(Boolean型字符串);例如:if(Boolean.parseBoolean("true"));
      tip:只有character没有parse方法。(2)如果字符串被Integer进行对象的封装,可使用另一个非静态的方法,intValue(),将一个Integer对象转化成基本数据类型值
      Integer i=new Integer("123");
          sysout("i.intValue");
    进制转化问题:
    (1)十进制转化为其他进制
      二进制:static String toBinaryString(int);
      16进制:static String toHexString(int);
      八进制:static String toOctalString(int);
    (2)其他进制的转化:
      Integer.toString(n,m)
      n是数,m是进制数,可以是(toBinaryString)2->2进制,(toHexString)16->16进制,(toOctalString)8->8进制,
      Integer.parseInt("A",B)
      将数值A转化为十进制,其中B可以为二进制,可以为八进制,可以为十六进制,只要写B对应于相应的数字即可(2,8,16)
        
    装箱和拆箱:Integer i= new Integer(4);
    Integer i=4;->1.5之后的新特性,自动装箱,与上式等价
    i=i+6;->自动拆箱,等价于i=new Integer(i.intValue()+6);
     
    关于装箱和拆箱的1.5的新特性
    Integer a =new Integer(127);
    Integer b =new Integer(127);
    a==b;  //false
    a.equals(b);  //true
    
    Integer x=127;
    Integer y=127;
    x==y;  //true
    x.equals(b); //ture

     

    Integer a =new Integer(128);
    Integer b =new Integer(128);
    a==b;  //false
    a.equals(b);  //true
    
    Integer x=128;
    Integer y=128;
    x==y;  //false
    x.equals(b); //ture

     原因:jdk1.5之后自动装箱,如果装箱的是一个字节,那么该数据会被共享不回重新开辟空间。

     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    poj 2187 Beauty Contest(旋转卡壳)
    poj 2540 Hotter Colder(极角计算半平面交)
    poj 1279 Art Gallery(利用极角计算半平面交)
    poj 3384 Feng Shui(半平面交的联机算法)
    poj 1151 Atlantis(矩形面积并)
    zoj 1659 Mobile Phone Coverage(矩形面积并)
    uva 10213 How Many Pieces of Land (欧拉公式计算多面体)
    uva 190 Circle Through Three Points(三点求外心)
    zoj 1280 Intersecting Lines(两直线交点)
    poj 1041 John's trip(欧拉回路)
  • 原文地址:https://www.cnblogs.com/nolonely/p/5953163.html
Copyright © 2011-2022 走看看