java--基本类型包装类的概述

基本类型包装类的概述

  为了对基本数据类型进行更多的操作,更方便的操作,java就针对每一种基本数据类型提供了对应的类类型,我们常常用它来进行基本数据类型与字符串之间的转换。

基本类型和包装类的对应

基本数据类型包装类
byteByte
shortShort
charCharacter
intInteger
floatFloat
doubleDouble
booleanBoolean
longLong

Integer类

  Integer类是int类型的包装类,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法,在JDK5以及以上版本,提供了自动拆装箱,也就是不需要你把int类型包装成Integer类,也不需要你把Integer类变成int类型,JDK帮你解决了这个问题,其他包装类也如此,这里就只介绍一下Integer类。
构造方法
		public Integer(int value)
		public Integer(String s)
常用方法
		public Integer valueOf(int i)//返回一个表示指定的int值的Integer实例
		public Integer valueOf(String s)//返回保存指定的String的值的Integer对象
		public int parseInt(String s)//将数字字符串转换为int类型
String和int类型的相互转换
int -- String
		和""进行拼接
		public static String valueOf(int i)
		int -- Integer -- String
		public static String toString(int i)
String -- int
		String -- Integer -- intValue();
		public static int parseInt(String s)

代码演示

1、将String转变为int,将int转变为String
public class Demo {
    public static void main(String[] args) {
   		 //parseInt(String s)方法,将String转变为int
        int i = Integer.parseInt("123");
        System.out.println(i);
        
         //String -- Integer -- intValue(),将String转变为int
        Integer in = Integer.valueOf("456");
        int i1 = in.intValue();
        System.out.println(i1);
        
         /valueOf(),将int转变为String
        String s = String.valueOf(10);
        System.out.println(s);
        
        //toString(),将int转变为String
        String s1 = Integer.toString(100);
        System.out.println(s1);
        
         //int -- Integer -- String,将int转变为String
        Integer in1 = Integer.valueOf(400);
        String s2 = in1.toString();
        System.out.println(s2);
    }
}

结果

123
456
10
100
400

2、面试题

public class Demo {
    public static void main(String[] args) {

        Integer i1 = new Integer(127);
        Integer i2 = new Integer(127);
        System.out.println(i1 == i2);//false
        System.out.println(i1.equals(i2));//true
        System.out.println("-----------");

        Integer i3 = new Integer(128);//
        Integer i4 = new Integer(128);
        System.out.println(i3 == i4);//false
        System.out.println(i3.equals(i4));//true
        System.out.println("-----------");

        Integer i5 = 128;
        Integer i6 = 128;
        System.out.println(i5 == i6);//false
        System.out.println(i5.equals(i6));//true
        System.out.println("-----------");

        Integer i7 = 127;
        Integer i8 = 127;
        System.out.println(i7 == i8);//true
        System.out.println(i7.equals(i8));//true
    }
}

结果

false
true
-----------
false
true
-----------
false
true
-----------
true
true

注:看到上面的代码你可能会疑惑i7和i8这两个Integer对象,为什么用==会是true呢,因为Integer在数值不超过127(包含127)的情况下是不会new空间的,因此这两个对象的地址相同。
  如果你还想知道其他的包装类用法,你可以通过JDK提供的API来查看。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值