包装类

包装类:

 

包装类的功能都是针对基本数据类型而定的

 

1认识包装类:

 

Object类是所有类的父类,可以接收所有数据类型, 例如 int i=10  Object obj=i;  Object obj=10;   把一个int类型的常量10 赋值给 Object 类型, 基本数据类型不是一个类 ,在向上转型之前都会把基本数据类型进行包装

 

范例:实现一个包装类 int类型为例

package org.ints;

 

public class Int {  //包装一个基本数据类型

     private int data;

    

     public Int(int data) {

         

          this.data=data;

     }

    

     //取出基本数据类型

     public int intValue() {

         

          return this.data;

     }

}

 

 

对于基本数据类型的包装类,一共八种:

 

1  int        Integer

 

2 double      Double

 

3 float        Float

 

4 char        Character

 

5 short        Short

 

6 byte         Byte

 

7 long         Long

 

8 boolean      Boolean

 

Number是一个抽象类,Number表示的是一个数值类的概念,它的子类都用于表示数值该类存在如下方法:

Byte  short long int double float

public byte XXXValue()  返回基本数据类型   拆箱操作

 

 

包装类的 装箱与拆箱:

 

装箱操作: 基本数据类型变为包装类

Integer  n=new Integer(10);

 

拆箱操作: 把包装类变为基本数据类型

int m=n.intValue();  //拆箱操作

 

数值型的包装类 拆箱的操作都是由Number类定义好的

 

JDK1.5之后增加新功能 自动装箱 与自动拆箱

 

1 自动装箱:

     Integer  n=10;  //自动装箱操作  10 基本数据类型 赋值给一个包装类

2 自动拆箱

     Integer  n=10;  //自动装箱操作  10 基本数据类型 赋值给一个包装类

        System.out.println(n+20); //自动拆箱

 

 

数据类型的转换:

 

使用包装类还有一个特点就是可以使用类的功能完成类型的转换 例如实现 字符串与数据类型之间的转换

Integer

1public static int parseInt(String s) throws NumberFormatException 字符串转换为int  准换的字符串必须是数字

范例:实现字符串转换为int

int a=Integer.parseInt("123");

         

          System.out.println(a+123);

 

 

Double类: public static double parseDouble(String s) throws NumberFormatException

 

Boolean类  public static boolean parseBoolean(String s)

     boolean flag=Boolean.parseBoolean("false");

     System.out.println(flag);

 

在面试题:Boolean在进行转换的时候如果给定不是true 或者 false 转换的内容会为false 默认值 不会出现异常

 

 

基本数据类型转换为字符串:

 

两种方式:

1 进行字符串的拼接: hello+10 = hell10 字符串类型

 

2 public static String valueOf(xxx i) xxx代表数据类型  把其他数据类型转换为String

 String str=String.valueOf(10);

 System.out.println(str+10);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值