検索

ホームページ  >  に質問  >  本文

java 类型是直接使用基本类型还是就干脆直接用java.lang的类型

比如:

Integer => int
Boolean => boolean
...

黄舟黄舟2771日前1104

全員に返信(14)返信します

  • PHPz

    PHPz2017-04-17 13:08:18

    int是基本类型,Integer是对象,这是二者本质区别,具体使用见下图。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 13:08:18

    具体场合具体用。

    一般bean里面基本类型即可。

    如果字段涉及对象。那就用包装类型。

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 13:08:18

    两个原则:

    1. 在需要使用对象的时候用 boxed 类型,在不需要对象的地方尽量使用 unboxed 类型

    2. 在整个程序中,尽可少的进行 boxed <==> unboxed 转换,换句话说,就是在必须转换的时候才转换

    返事
    0
  • ringa_lee

    ringa_lee2017-04-17 13:08:18

    能用基本尽量用基本类型,如果需要用到包装类的时候再去转换吧

    返事
    0
  • 大家讲道理

    大家讲道理2017-04-17 13:08:18

    上面都说了许多,我说一个比较重要的一点,

    Long i,long i 分别递加 ,分别运行一百万次,就会发现所需的时间相差非常非常大!
    这是由于 Long对象运算时每次构造一个新的Long对象装long实例

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 13:08:18

    看你需要使用null不,需要就用包装类型吧

    返事
    0
  • 迷茫

    迷茫2017-04-17 13:08:18

    尽量使用原生类型。需要传引用或者放进容器中就用包装器。

    返事
    0
  • 阿神

    阿神2017-04-17 13:08:18

    在32位系统中 存储一个Integer类型的开销:
    32位存储对象引用
    32位存储对象标记信息:对象状态等
    32位存储对象的锁信息
    32位存储int值信息
    也就是说,初始化一个Integer对象需要开销128位内存空间

    而一个普通int类型数据,只需要32位的信息。

    在这样的情况下,你觉得优先考虑用什么呢?

    返事
    0
  • 阿神

    阿神2017-04-17 13:08:18

    除非必要,不然一律使用基本类型。

    1. 避免类型转换带来的问题(特别是有些隐式转换增加了排除问题的难度)。比如转化后精读缺少,空指针等问题。
    2. 基本类型的存放在栈中,读写速度快。虽然这点速度很不明显.
    3. 基本类型是通过值传递。好处是通过参数传递的时候,在方法内部改写了参数的状态值,不会影响到外部的参数。而且在并发中也比较好控制。

    返事
    0
  • 天蓬老师

    天蓬老师2017-04-17 13:08:18

    一般都是直接使用基本类型的,很少用封装的,除非有需要

    返事
    0
  • キャンセル返事