java拆箱与装箱?

本文深入解析Java的八种基本数据类型,包括整形、浮点型、字符型和布尔型,并详细介绍装箱与拆箱的概念及其实现方式。通过实例演示了基本数据类型与包装类型的相互转换,以及如何使用Integer类的parseInt方法将字符串转换为整数。同时,文章还介绍了Java 1.5后引入的自动装箱和拆箱特性。

1,java的八种基本数据类型:

整形:byte,short,int,long
浮点型:float,double
字符型:char
布尔型:boolean

 2,拆箱与装箱

拆箱:把包装类型转成基本数据类型

装箱:把基本数据类型转换成包装类型

基本数据类型      --------------------      包装类型

byte                                                    Byte

short                                                   Short

int                                                        Integer

long                                                    Long

float                                                     Float

double                                                 Double

char                                                     Character

boolean                                                Boolean

3,拆箱与装箱实例

(1)int与Integer的相互转换

public class Demo{

       public static void main(String args[]){

             int  n = 200;

             Integer integer = new Integer(n);//手动装箱

             int m = integer.intValue();//手动拆箱

             System.out.println("m="+m);

              Integer integer1 = new Integer(200);

              System.out.println("integer等价于integer1?"+integer.equals(integer1));

       }

}

运行结果:

m = 200

integer等价于integer1?true

(2)将字符串转换为整数

Integer 类有一个静态的 paseInt() 方法,可以将字符串转换为整数,语法为:

  1. parseInt(String s, int radix);

s 为要转换的字符串,radix 为进制,可选,默认为十进制。

下面的代码将会告诉你什么样的字符串可以转换为整数:

  1. public class Demo {
  2. public static void main(String[] args) {
  3. String str[] = {"123", "123abc", "abc123", "abcxyz"};
  4.  
  5. for(String str1 : str){
  6. try{
  7. int m = Integer.parseInt(str1, 10);
  8. System.out.println(str1 + " 可以转换为整数 " + m);
  9. }catch(Exception e){
  10. System.out.println(str1 + " 无法转换为整数");
  11. }
  12. }
  13. }
  14. }

运行结果:
123 可以转换为整数 123
123abc 无法转换为整数
abc123 无法转换为整数
abcxyz 无法转换为整数

4,自动拆箱与装箱

Java 1.5 之后可以自动拆箱装箱,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行。例如:

  1. public class Demo {
  2. public static void main www.120xh.cn (String[] args) {
  3. int m = 500;
  4. Integer obj = m; // 自动装箱
  5. int n = obj; // 自动拆箱
  6. System.out.println("n = " + n);
  7.  
  8. Integer obj1 = 500;
  9. System.out.println("obj 等价于 obj1?" + obj.equals(obj1));
  10. }
  11. }

运行结果:
n = 500
obj 等价于 obj1?true

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值