码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA基础--JAVA API常见对象(包装类和正则)12

时间:2017-10-02 16:45:02      阅读:242      评论:0      收藏:0      [点我收藏+]

标签:split   其他   value   system   引用   包装   指定   存在   xxx   

一、基本类型包装类

  1.基本类型包装类介绍   

   8种基本类型:

           byte  short    int    long    float   double   char   boolean

  这8种基本类型它们在程序仅仅只能规范某个空间的数据类型,并不能按照类的方式去操作这些类型。

           int a ;  在内存中需要开辟一个int类型的空间,空间名称为a       

  于是sun公司针对这8种基本类型提供了它们各自对应的类类型。把这些类型统一称为基本类型包装类。

   byte  ------》  Byte

   short  ------》 Short

   int   ------》  Integer

   long  ------》  Long

   float  ------》  Float

   double------》  Double

   char  -------》  Character

   boolean ------》 Boolean

        八种基本类型对应的包装类,除int和char类型之外的其他六个都是关键字的首字母大写。

        int   Integer

       char  Charater

  2.基本类型包装类显示 

  基本类型对应的包装类中,提供的成员变量,成员变量中保存当前这个类型中可以存储的最大值和最小等静态变量

  技术分享

  技术分享   

  发现基本类型包装类没有对外提供空参数的构造方法。因为每个基本类型包装类的对象都需要封装一个对应的基本类型数值。如果有空参数的构造方法,创建出来的对象并不知道它会将那个基本类型封装成对象。

  

 1 /*
 2  * 演示基本类型包装类
 3  */
 4 public class IntegerDemo {
 5     public static void main(String[] args) {
 6         
 7         int x = 123;
 8         //将基本类型数据转成对应的包装类型
 9         Integer i = new Integer(x);
10         /*
11          * 在使用基本类型包装类将一个字符串转成对应的包装类对象的时候
12          * 要求指定的字符串中的数据一定可以转成数字,如果字符串中存在一个其他的非
13          * 数字数据,在创建包装类对象的时候就会发生异常。
14          */
15         Integer i2 = new Integer("123");
16         System.out.println(i2); 
17         //调用成员变量
18         System.out.println(Integer.MAX_VALUE);
19         System.out.println(Integer.MIN_VALUE);
20         System.out.println(i);
21         
22         System.out.println(Integer.toBinaryString(x));
23         System.out.println(Integer.toHexString(x));
24         System.out.println(Integer.toOctalString(x));
25     }
26 }

 

 

   3. 基本数据类型和包装类之间的转换

    a. 基本类型转成包装类 

      1、使用包装类的构造方法

      2、使用类中的静态方法valueOf

    技术分享

   b. 将包装类型转成基本类型

     使用当前基本类型对应的包装类中的xxxValue方法完成

    技术分享

  4. 字符串和基本类型数据、包装类型转换

    a.字符串转基本类型    

      使用基本类型对应的包装类中的parseXxxx方法。

      技术分享

    b.  基本类型转字符串

      b.1  String类中提供的静态的valueOf,可以将基本类型转成字符串

      b.2  使用+号链接

      b.3 使用包装类中的静态的toString方法

      技术分享

    c. 字符串转包装类型    

    c.1、  包装类的构造方法

    c.2、  包装类中的静态方法valueOf

    技术分享

    d. 包装类型转字符串   

      d.1、  使用String类中的静态的valueOf方法

      d.2、  使用包装类中复写了Object的toString方法

    技术分享

    e. 总结   

      基本类型、包装类型、字符串三者之间的转换:

    技术分享

  5. 自动装箱和拆箱

    在JDK5中,针对基本类型数据和对应的包装类型之间的转换进行了简化。

    自动装箱:可以把一个基本类型的数据直接赋值给对应的包装类型的引用。

    技术分享  

    自动拆箱:可以直接把一个包装类型的引用赋值给基本类型变量。

  6. 练习

  

 1 /*
 2  * 需求:对字符串中的数字数据按照它们的字面值进行排序。
 3  *         “11  -11  -1  -101  123  21  12  101”
 4  * 分析:
 5  *         需要对字符串进行切割,得到一个字符串数组,这时不能直接对这个对象进行排序
 6  *         因为直接排序是按照数组中每个字符串的相同位置上字符的编码值进行大小比较
 7  *         而不能按照每个字符串中的数字具体数值进行比较
 8  * 
 9  *         我们就需要将当前的字符串数组中的每个字符串再转成int类型的数字,然后在比较大小排序
10  */
11 public class Test {
12     public static void main(String[] args) {
13         
14         String s ="11 -11 -1 -101 123 21 12 101";
15         
16         //使用空格切割
17         String[] strs = s.split(" ");
18         
19         //定义一个int类型的数组,用于保存转后的每个int数据
20         int[] arr = new int[strs.length];
21         
22         //循环取出字符串数组中的每个字符串数据
23         for (int i = 0; i < strs.length; i++) {
24             //将字符串转成int值保存在arr数组中
25             int x = Integer.parseInt(strs[i]);
26             arr[i] = x;
27         }
28         //循环结束,就表示当前strs数组中的每个字符串都已经被转成int类型的数据保存在arr中
29         //对arr排序
30         Arrays.sort(arr);
31         
32         //将数组转成字符串
33         //使用字符串缓冲区,临时将需要拼接的数据存储在缓冲区中
34         StringBuilder sb = new StringBuilder();
35         //循环取出arr中的每个int类型的数据
36         for (int i = 0; i < arr.length; i++) {
37             sb.append(arr[i]);
38             sb.append(" ");
39         }
40         
41         //将字符串缓冲区中的数据转成字符串数据
42         String ss = sb.toString();
43         
44         System.out.println(ss);
45     }
46 }

 

  

 

    

 

JAVA基础--JAVA API常见对象(包装类和正则)12

标签:split   其他   value   system   引用   包装   指定   存在   xxx   

原文地址:http://www.cnblogs.com/Kubility123/p/7620271.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!