搜索

首页  >  问答  >  正文

java - 状态标识(比如0和1),用int好,还是有其他选择了?

状态标识(比如0和1),用int好,还是有其他选择了? 比如short

比如 状态有1和0
int flag=1
short flag=1
这两个那个会好一些了?

PHP中文网PHP中文网2807 天前929

全部回复(4)我来回复

  • 迷茫

    迷茫2017-04-18 10:53:12

    如果你只是用来表示状态的话, short 和 int 是没有任何区别的,不信你可以编译一下,看看字节码。

    代码

    int flag = 1;
    short flag = 1;

    和代码

    int flag = 1;
    int flag = 1;

    得到的字节码是完全相同的!都会得到如下字节码,

             0: iconst_1
             1: istore_1
             2: iconst_1
             3: istore_2

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 10:53:12

    看你使用场景, 如果用于对象属性或者sql的参数,最好用Integer。因为你可能没有初始化,用int会有默认值0(这个0可能不是你想要的)

    回复
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:53:12

    状态只有 0 和 1 的话,可以用 booleantruefalse) 或者 byte(0 或 1,byte 的范围在 -128 ~ 127);状态如果较多,更推荐用 enum

    回复
    0
  • 迷茫

    迷茫2017-04-18 10:53:12

    这个boolean和int都可以。没什么区别的。

    回复
    0
  • 取消回复