zoukankan      html  css  js  c++  java
  • 牛客网Java刷题知识点之自动拆装箱

       不多说,直接上干货!

    https://www.nowcoder.com/ta/review-java/review?query=&asc=true&order=&page=5

     

     Java语言支持的8种基本数据类型是:
    byte
    short
    int
    long
    float
    double
    boolean
    char

     
     
      自动装箱是Java编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如:把int转化成Integer,double转化成Double,等等。反之就是自动拆箱。
      Java支持的数据类型包括两种:一种是基本数据类型,包含byte,char,short, boolean ,int , long, float,double;另一种是引用类型:如String等,其实是对象的引用,JVM中虚拟栈中存的是对象的地址,创建的对象实质在堆中,通过地址来找到堆中的对象的过程,即为引用类型。
      自动装箱就是Java编译器在基本数据类型和对应的对象包装类型间的转化,即int转化为Integer。
      自动拆箱是Integer调用其方法将其转化为int的过程。

      题目链接

    https://www.nowcoder.com/profile/4002626/myFollowings/detail/3200810

    1、Integer有三种创建方式:
      Integer i1 = 59;
      Integer i2 = Integer.valueOf(59);
      Integer i3 = new Integer(59);


    2、如果一个Integer类型的数和int类型的数相比(==),那么,由于会自动拆箱,Integer会拆箱为int型,所以,只要数值相等,则这个Integer就和int型的数字相等,不管这个Integer是以何种方式创建的。



    package Test;
    
    public class IntegerTest {
        
        public static void main(String[] args) {
        Integer i1 = 59;
        Integer i2 = Integer.valueOf(59);
        Integer i3 = new Integer(59);
        int i4 = 59;
        
        //只要是和int类型的比较,不管Integer如何创建,只要满足数值相等,就为true,因为会自动拆箱
        System.out.println(i1==i4);//true
        System.out.println(i2==i4);//true
        System.out.println(i3==i4);//true
        
        //只要是new Integer,并且比较的不是int型,那么,一定不相等
        System.out.println(i2==i3);//false
        System.out.println(i1==i3); //false
        
        //如果涉及到Integer.valueOf这个方法,那么,只要记住,
        // 如果 Integer i1 = 59,这个值在-128到127范围内,则true
        // 否则,false
        System.out.println(i1==i2); //true
        Integer i7 = 129;
        Integer i8 = Integer.valueOf(129);
        System.out.println(i7==i8);//false
        
       }
        
    }
  • 相关阅读:
    CodeForces 734F Anton and School
    CodeForces 733F Drivers Dissatisfaction
    CodeForces 733C Epidemic in Monstropolis
    ZOJ 3498 Javabeans
    ZOJ 3497 Mistwald
    ZOJ 3495 Lego Bricks
    CodeForces 732F Tourist Reform
    CodeForces 732E Sockets
    CodeForces 731E Funny Game
    CodeForces 731D 80-th Level Archeology
  • 原文地址:https://www.cnblogs.com/zlslch/p/7413887.html
Copyright © 2011-2022 走看看