精华内容
下载资源
问答
  • 包装类应用场景和自动装箱、拆箱 1、集合类泛型只能是包装类; List<Integer> list; 2、成员变量不能有默认值; 基本数据类型的成员变量都有默认值,如以上代码 status 默认值为 0,如果定义中 0 代表失败...

    包装类应用场景和自动装箱、拆箱

    1、集合类泛型只能是包装类;

    List<Integer> list;

    2、成员变量不能有默认值;

    基本数据类型的成员变量都有默认值,如以上代码 status 默认值为 0,如果定义中 0 代表失败,那样就会有问题,这样只能使用包装类 Integer,它的默认值为 null,所以就不会有默认值影响。

    private Integer state;//默认为null

    private int state;//默认为0   如果0表示某种意义就会有问题

    3、方法参数允许定义空值;

    private static void test1(int status){
    
        System.out.println(status);
    
    }

    看以上代码,方法参数定义的是基本数据类型 int,所以必须得传一个数字过来,不能传 null,很多场合我们希望是能传递 null 的,所以这种场合用包装类比较合适。

    4、自动装箱

    自动装箱即自动将基本数据类型转换成包装类型,在 Java 5 之前,要将基本数据类型转换成包装类型只能这样做,看下面的代码。

    Integer i1 = new Integer(8);
    Integer i2 = Integer.valueOf(8);
    // 自动装箱
    Integer i3 = 8;

    其实自动装箱的原理就是调用包装类的 valueOf 方法,如第 2 个方法中的 Integer.valueOf 方法。以上 3 种都可以进行转换,但在 Java 5 之前第 3 种方法是编译失败的,第 3 种方法也正是现在的自动装箱功能。另外,第一种构造器方法也不推荐使用了,已经标为废弃了。

    5、自动拆箱

    自动拆箱即自动将包装类型转换成基本数据类型,与自动装箱相反,有装就有拆,很好理解。

    // 自动拆箱
    int i4 = i3;
    int i5 = i3.intValue();

    自动装箱、拆箱不只是体现在以上的例子,在方法接收参数、对象设置参数时都能自动装箱拆箱。继续上面的例子,把 i3 赋值给 i4 就是实现的自动拆箱功能,自动装箱的原理就是调用包装类的 xxValue 方法,如 i5 中的 Integer 的 intValue 方法。

     

    以上内容,借鉴于:http://www.php.cn/java-article-410108.html

    转载于:https://www.cnblogs.com/lxxyd/p/10848660.html

    展开全文
  • Java常量池中数值范围为[-128,127],使用字面值为一个包装类初始化,如果字面值在[-128,127]之间,jvm会在常量池中寻找该常量,那么该包装类的引用指向的是常量池中的一片区域,如果字面值超过这个范围,会创建包装...

    问题:将String类型的数字转换为数值类型,可以使用包装类的valueof()方法或者parseInt()等方法;使用valueof()方法返回的是包装类型,使用parseInt()等方法返回的是基本类型,valueof()等方法底层调用parseInt()等方法;Java有自动拆箱和装箱的机制,使用两种方式中的任意一种都可以,但是在特殊情况下不能随意使用,比如:要进行页面空值和0输出时,Integer可以为空,而int为0。

    Integer类的一些方法:

    • int i = Integer.MAX_VALUE();    //获得int最大值​
    • int i = String.ParseInt(Integer.toString(a,2));   //a的二进制
    • int i = Integer.parseInt("110",10) ;      //  字符串110的十进制数​​​
    • String str = Integer.toString(i);  

    //这些都是类的静态方法,不用New对象,直接使用
    // 只有Character 没有 toString() 方法,

    int num = 1;
    string s1 = num + "";//先装箱,调用toString方法,再相加
    string s2 = num.toString();//基本类型不能调用toString方法
    
    //总结:如果是包装类型转换为字符串,使用toString方法比+“”方式好
    Integer i = new Integer(1);
    Map<String,Object> map = new HashMap();
    map.put("num",i);
    String iStr = map.get("num")+"";//map.get("num")

    下面记录他们的区别:

    • 包装类型的默认初始值为null,基本类型为0、false等
    • 集合类中只能使用包装类
    • 泛型中使用包装类
    • 反射调用函数中使用包装类
    • 数据库查询的结果为null时,不能赋值给基本类型,应该使用包装类
    • 使用>或<比较大小时会自动拆箱,使用==比较时不会
    • Java常量池中数值范围为[-128,127],使用字面值为一个包装类初始化,如果字面值在[-128,127]之间,jvm会在常量池中寻找该常量,那么该包装类的引用指向的是常量池中的一片区域,如果字面值超过这个范围,会创建包装类对象
      package test;  
        
      public class Test {  
        
          public static void main(String[] args) {  
              Integer i1 = 127;//指向常量池中的127  
              Integer i2 = 127;//指向常量池中的127
              System.err.println(i1 == i2);//指向同一内存区域,输出true  
                
              i1 = 128;  //创建对象
              i2 = 128;  //创建对象
              System.err.println(i1 == i2);  //指向不同区域,输出false
          }  
      } 

       

     

    转载于:https://my.oschina.net/u/3160411/blog/1570610

    展开全文
  • 包装类应用场景和自动装箱、拆箱1、集合类泛型只能是包装类;List list;2、成员变量不能有默认值;基本数据类型的成员变量都有默认值,如以上代码 status 默认值为 0,如果定义中 0 代表失败,那样就会有问题,这样...

    包装类应用场景和自动装箱、拆箱

    1、集合类泛型只能是包装类;

    List list;

    2、成员变量不能有默认值;

    基本数据类型的成员变量都有默认值,如以上代码 status 默认值为 0,如果定义中 0 代表失败,那样就会有问题,这样只能使用包装类 Integer,它的默认值为 null,所以就不会有默认值影响。

    private Integer state;//默认为null

    private int state;//默认为0   如果0表示某种意义就会有问题

    3、方法参数允许定义空值;

    private static void test1(intstatus){

    System.out.println(status);

    }

    看以上代码,方法参数定义的是基本数据类型 int,所以必须得传一个数字过来,不能传 null,很多场合我们希望是能传递 null 的,所以这种场合用包装类比较合适。

    4、自动装箱

    自动装箱即自动将基本数据类型转换成包装类型,在 Java 5 之前,要将基本数据类型转换成包装类型只能这样做,看下面的代码。

    Integer i1 = new Integer(8);

    Integer i2= Integer.valueOf(8);//自动装箱Integer i3= 8;

    其实自动装箱的原理就是调用包装类的 valueOf 方法,如第 2 个方法中的 Integer.valueOf 方法。以上 3 种都可以进行转换,但在 Java 5 之前第 3 种方法是编译失败的,第 3 种方法也正是现在的自动装箱功能。另外,第一种构造器方法也不推荐使用了,已经标为废弃了。

    5、自动拆箱

    自动拆箱即自动将包装类型转换成基本数据类型,与自动装箱相反,有装就有拆,很好理解。

    //自动拆箱

    int i4 =i3;int i5 = i3.intValue();

    自动装箱、拆箱不只是体现在以上的例子,在方法接收参数、对象设置参数时都能自动装箱拆箱。继续上面的例子,把 i3 赋值给 i4 就是实现的自动拆箱功能,自动装箱的原理就是调用包装类的 xxValue 方法,如 i5 中的 Integer 的 intValue 方法。

    以上内容,借鉴于:http://www.php.cn/java-article-410108.html

    展开全文
  • 在java中有八种基本数据类型对应每种基本类型又有八种包装类型:基本类型:boolean, char, int, byte,short,long, float,double包装器类型:Boolean,Character,Integer,Byte,Short,Long,Float,Double...

    在java中有八种基本数据类型对应每种基本类型又有八种包装类型:

    基本类型:boolean, char, int, byte,short,long, float,double

    包装器类型:Boolean,Character,Integer,Byte,Short,Long,Float,Double

    从上面我们可以看到除了 char和int其它的包装类型名称和对应的基本类型一样只是首字母大写了。

    在某些场合不能使用基本类型必须使用包装类,比如集合能接收的类型为Object,基本类型是无法添加进去的,还有泛型也必须使用包装类。

    另外假设我们要定义一个变量表示分数 如果用基本类型表示的话:int score;

    默认值为零,如果我想表示分数为空也就是没有参加考试就没法表现了因为值类型是无法赋空值的,如果使用包装类型Integer score,就可以表示这种情况,因为Integer的默认值为空。

    包装类型是引用类型,说白了就是一个类,既然是类,里面可以有属性和方法,它里面有哪些属性和方法呢?每个包装类型和基本数据类型都是大同小异的,我们拿Integer 和 int来举例说明:

    假设有这样一个场景,我接收到一个String型的数据想把它转换为整型,如果没有包装类这个操作是无法完成的,有了包装类我们可以这样做:

    String num1 = "123";

    int num2 = Integer.parseInt(num1);

    parseInt就是Integer包装类提供的一个将字符串转成int型的方法。

    为什么会有包装类?

    1.包装类里面有一些很有用的方法和属性,如HashCode,ParseInt

    2.基本类型不能赋null值,某些场合需要。

    3.有些地方不能直接用基本类型,比如集合.

    什么时候用包装类,什么时候用基本类型?

    1.在pojo类中定义的属性用包装类

    2.在rpc方法中定义参数和返回值的类型用包装类

    3.定义局部变量用基本类型

    展开全文
  • 在Java初学阶段,想必很多人都会先学Java中的一些基本类型以及他们的包装类,如下 int --> Integer long --> Long double --> Double ...等等 很多人在学的时候感觉这用处不大啊,也不知道什么时候用,该...
  • 然后再根据这两个特性进行分业务使用,在阿里巴巴的规范里所有的POJO必须使用包装类型,而在本地变量推荐使用基本类型。Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一...
  • 然后再根据这两个特性进行分业务使用,在阿里巴巴的规范里所有的POJO必须使用包装类型,而在本地变量推荐使用基本类型。Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一...
  • 原文链接:Java包装类之实体类不要使用基本类型 今天来记录一下,在项目中因为基本类型,所产生的bug。U•ェ•*U 包装类:8种基本类型的包装类 应用场景:数据库建立实体映射多用包装类 这两句话是重点:就是建立...
  • 基本数据类型和包装数据类型推荐使用场景 所有的 POJO 属性必须使用包装数据类型 RPC 方法的返回值和参数必须使用包装数据类型 所有的局部变量推荐使用基本数据类型
  • 在java中有八种基本数据类型对应每种基本类型又有八种包装类型: 基本类型:boolean, char, int,...在某些场合不能使用基本类型必须使用包装类,比如集合能接收的类型为Object,基本类型是无法添加进去的,还有泛型也
  • java中包装类使用

    2020-12-04 09:58:42
    1.为什么要有包装类(或封装类) 为了使基本数据类型的变量具有类的特征,引入包装类。 2.基本数据类型与对应的包装类 3.需要掌握的类型间的转换(基本数据类型、包装类、String) 简易版: 应用场景举例: 4....
  • 基本数据类型和包装数据类型推荐使用场景 所有的 POJO 属性必须使用包装数据类型 RPC 方法的返回值和参数必须使用包装数据类型 所有的局部变量推荐使用基本数据类型
  • 在读取的时候,解析器会自动将其转换回"&",",">"等特殊字符,正常来说,只有"字符和"&"字符对于XML来说是严格禁止使用的。 // 以下是XML中需要转义的字符: // &(逻辑与) & // <(小于) < // >(大于) ...
  • 然后再根据这两个特性进行分业务使用,在阿里巴巴的规范里所有的POJO必须使用包装类型,而在本地变量推荐使用基本类型。 Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,...
  • 包装类

    2019-07-25 18:57:21
    包装类:将基本数据类型转化成对象 在构造函数的章节当中我们讲过,double的默认值是0.0,这是因为基本数据类型不是类类型,它们也没有对应的实例。 所以我们定义int或者long的时候都是直接赋值的,比如: long a = 3...
  • 类别Java基础数据类型以及其包装类。 ... 通过表格类比了一下, 包装类用的场景多些。 所以,只要在第一项 Calculate(计算)+-*/%^ 才使用基本数据类型,其他场景均可以用包装类 ;-)  ...
  • 一、为什么要有包装类(或封装类) 二、基本数据类型与对应的包装类 ​三、需要掌握的类型间的转换 1.基本数据类型<--->包装类 a.JDK5.0之前 b.JDK5.0之后 2.基本数据类型、包装类--->String 3....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 588
精华内容 235
关键字:

包装类使用场景