zoukankan      html  css  js  c++  java
  • app小公举之自学内容-->Integer(区别于int)

      实习快半个月了,最近收获还是挺大的,虽然我不是很厉害的开发者,更何况我现在做的事情还是与开发没多大关系的职位,软件测试,呵呵,有点搞笑吧,以前的事就不提了,现在已经这样了,那么学了一晚上了,还是来整理整理今天APP小公举的学习笔记,针对integer的详解。

      谈integer之前,先说说int吧,咱们都知道,java的数据类型分为基本数据类型和复杂数据类型,而int是基本数据类型,直接可以存值,相反,integer是复杂数据类型,并且它是一个对象,因此在类进行初始化时int类型的变量初始值为0,integer变量初始值为null。

       integer是一个类,是int的扩展,定义了很多转换方法,Integer是int的封装类,两者都可以表示一个数值,但不能互用,因为他们是不同的数据类型,在ArrayList和HashMap中,例如int和double是放不进去的,因为容器装的是object对象,这就需要这些内建类的外覆类作为对象存值放进容器中。

       举例说明:

       ArrayList al = new ArrayList();

       int n = 40;

       Integer nI = new Integer(n);

       al.add(n);//不可以的,数据不匹配,语法错误

       al.add(nI);//可以,数组成功添加对象

       

       另外,Integer可以支持泛型,而Int不行,例如:

       List<Integer> list = new ArrayList<Integer>();//可以

       List<int> list = new ArrayList<int>();//不可以

     

       总结:int类型的数,只能用来进行数值运算或者作为参数传递,才能直接声明为int的基本数据类型,另一方面,如果要像对象一样来处理,就需要声明一个Integer的对象,因为此种声明能够提供很多对象间的转换方式以及一些常用的方法。所以,java作为一门面向对象的语言,我们在声明一个变量时最好声明为对象格式,有利于面向对象思维的理解。

  • 相关阅读:
    2019 ICPC Malaysia National H题
    欧拉定理证明
    P3384 【模板】树链剖分
    HDU 6070 Dirt Ratio(线段树、二分)
    51Nod 1571 最近等对(线段树、离线查询)
    51Nod 1781 Pinball(线段树、dp、离散化)
    51Nod 1494 选举拉票(权值线段树)
    51Nod 1766 树上的最远点对(欧拉序、lca、线段树区间合并)
    lintcode-179-更新二进制位
    lintcode-178-图是否是树
  • 原文地址:https://www.cnblogs.com/liujiali/p/5484014.html
Copyright © 2011-2022 走看看