zoukankan      html  css  js  c++  java
  • 黑马程序员JAVA基础基本数据类型对象包装类

      

      基本数据类型包装类是按照面向对象的思想讲基本数据类型封装成了对象。

      好处:

      1、可以通过对象中的属性和行为操作基本数据类型。

      2、可以实现基本数据类型和字符串之间的转换。 

      JAVA 对基本数据类型对象对应的包装类:

        byte                   Byte

        int                      Integer

        long                    Long 

        boolean      Boolean

        float                Float 

        double      Double

        char        Character

      

    一. 基本数据类型和字符串之间的转换:

      1、基本数据类型转换成字符串:

        基本数据类型+"" ;

        基本数据类型包装类对象.toString(基本数据类型) ; 

        注意:这里的toString 方法不是Object 类的。而是重载了toString 方法。同时,该方法为静态。

     1 public class IntegerText {
     2     public static void main(String[] args)
     3     {
     4         int x = 123345 ; 
     5         String s = x + "" ; 
     6         System.out.println("s="+s+";s的长度为:"+s.length()); 
     7 //        使用toString 方法。
     8         String str = Integer.toString(123345) ; 
     9 //        这里的equals 方法是重写了Object 类的方法。
    10         System.out.println("str.equals(s):"+str.equals(s)); 
    11         System.out.println("s==str:" + (s == str));
    12     }
    13 }

      2、字符串转换成基本数据类型: 

          xxx a = Xxx.parseXxx(String) ;  

    1 public class StringToBase {
    2     public static void main(String[] arg)
    3     {
    4         int a = Integer.parseInt("123") ;
    5         System.out.println("a == " + a); 
    6 //        下面的代码会出现异常:
    7         int b = Integer.parseInt("xxx123") ;  
    8     }
    9 }

      

    二.JDK 1.5 新特性:

      如下:  

     1 public class IntegerText {
     2     public static void main(String[] args)
     3     { 
     4         Integer a = 127 ;
     5         Integer b = 127; 
     6         Integer c = new Integer(127) ; 
     7         System.out.println("a.equals(b):"+a.equals(b));
     8         System.out.println("a == b :" + (a == b));
     9         System.out.println("a.equals(c):"+a.equals(c));
    10         System.out.println("a == c :" + (a == c));
    11         System.out.println("-----我是分割线--------------");
    12         a += 1 ;
    13         b += 1 ; 
    14         System.out.println("a.equals(b):"+a.equals(b));
    15         System.out.println("a == b :" + (a == b)); 
    16     }
    17 }

      打印的结果如下: 

    a.equals(b):true
    a == b :true
    a.equals(c):true
    a == c :false
    -----我是分割线--------------
    a.equals(b):true
    a == b :false

      新特性:

      1、可以对基本数据类型对象进行直接赋值。原理是通过自动装箱和自动拆箱来完成。

      如第12行的代码: a 进行自动拆箱(a.intVaule()) 变成 int 类型,和1进行加法运算,再装箱。

      2、当数值在byte 范围内,如果该数值已经存在,则不会开辟新的空间。

      如:当a 和 b的基本类型数值在byte 范围内,a == b 返回的 true ; 而当a 和 b 的基本类型数值大于127 时,则 a == b 返回 false ;

    三.常用的方法还有:

      十进制转成其他进制:

        toBinaryString(int i) : 以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。

        toOctalString(int i) : 八进制

        toHexString(int i ) ; 十六进制。

      其他进制转换成十进制:

        parseInt(String,radix):使用第二个参数指定的基数,将字符串参数解析为有符号的整数。

  • 相关阅读:
    服务端配置scan ip
    父表、子表 主外键关系
    Linux下使用NMON监控、分析系统性能
    Spot light工具集
    linux设置中文环境
    【Android Developers Training】 20. 创建一个Fragment
    【Android Developers Training】 19. 序言:通过Fragments构建动态UI
    【Android Developers Training】 18. 重新创建一个Activity
    【Android Developers Training】 17. 停止和重启一个Activity
    【Android Developers Training】 16. 暂停和恢复一个Activity
  • 原文地址:https://www.cnblogs.com/jbelial/p/2981020.html
Copyright © 2011-2022 走看看