我是靠谱客的博主 刻苦小天鹅,最近开发中收集的这篇文章主要介绍&Java中包装类(wrapper)的使用 &基本数据类型、包装类、String三者之间的相互转换8种基本数据类型对应的包装类基本类型、包装类与String类间的转换  特殊说明:IntegerCache中定义的Integer[]结果,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  • 8种基本数据类型对应的包装类

基本数据类型进行包装后,有了类的特点,就可以调用类中的方法,Java才是真正的面向对象

  • 基本类型、包装类与String类间的转换 

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

方式1:5.0 新特性:自动装箱 

int num1 = 10;
Integer integer = num1;

方式2:调用包装类的构造器

public class WrapperTest {
    public static void main(String[] args) {
        int num = 11;
        Integer in1 = new Integer(num);
        System.out.println(in1.toString()); //11

        Integer in2 = new Integer(123);
        System.out.println(in2.toString()); //123

        //错误:NumberFormatException
//        Integer in3 = new Integer("1aaa");
//        System.out.println(in3.toString());

        A a = new A();
        System.out.println(a.isMale); //false
        System.out.println(a.isFemale); //null
    }
}

class A {
    boolean isMale;
    Boolean isFemale;
}

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

方式1:5.0 新特性:自动拆箱

Boolean b1 = true;
boolean b2 = b1;

方式2:调用包装类Xxx的xxxValue()

 Float f = new Float(11.1);
 float f1 = f.floatValue();
 System.out.println(f1 +1);  //12.1

 基本数据类型、包装类--->String类型:调用String重载的valueOf(Xxx xxx)

int number = 100;
//方式1:连接运算
String st = number + "";
System.out.println(st); //"100"
//方式2:调用String的valueOf(Xxx xxx)
float fl = 12.3f;
String st1 = String.valueOf(fl);
System.out.println(st1); //"12.3"

Double d = new Double(11.1);
String st2 = String.valueOf(d);
System.out.println(st2);  //"11.1"

 String类型 --->基本数据类型、包装类:调用包装类的parseXxx(String s)

       //错误情况:
//        String str1 = "123";
//        int number1 = (int) str1;
//        Integer number2 = (Integer)str1;

        //可能会报NumberFormatException
        String str2 = "123";
        int number2 = Integer.parseInt(str2);
        System.out.println(number2 +1); //124

        String str3 = "true";
        String str4 = "true1";
        boolean bl1 = Boolean.parseBoolean(str3);
        boolean bl2 = Boolean.parseBoolean(str4);
        System.out.println(bl1); //true
        System.out.println(bl2); //false
  •  特殊说明:IntegerCache中定义的Integer[]结果

Integer i = new Integer(1);
Integer j = new Integer(1);
System.out.println(i == j);//false

//Integer内部定义了IntegerCache结构,IntegerCache中定义了Integer[],
//保存了从-128~127范围的整数。如果我们使用自动装箱的方式,给Integer赋值的范围在
//-128~127范围内时,可以直接使用数组中的元素,不用再去new了。目的:提高效率

Integer m = 1;
Integer n = 1;
System.out.println(m == n);//true

Integer x = 128;//相当于new了一个Integer对象
Integer y = 128;//相当于new了一个Integer对象
System.out.println(x == y);//false

最后

以上就是刻苦小天鹅为你收集整理的&Java中包装类(wrapper)的使用 &基本数据类型、包装类、String三者之间的相互转换8种基本数据类型对应的包装类基本类型、包装类与String类间的转换  特殊说明:IntegerCache中定义的Integer[]结果的全部内容,希望文章能够帮你解决&Java中包装类(wrapper)的使用 &基本数据类型、包装类、String三者之间的相互转换8种基本数据类型对应的包装类基本类型、包装类与String类间的转换  特殊说明:IntegerCache中定义的Integer[]结果所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部