84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
状态标识(比如0和1),用int好,还是有其他选择了? 比如short
比如 状态有1和0 int flag=1 short flag=1 这两个那个会好一些了?
认证高级PHP讲师
如果你只是用来表示状态的话, 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
看你使用场景, 如果用于对象属性或者sql的参数,最好用Integer。因为你可能没有初始化,用int会有默认值0(这个0可能不是你想要的)
状态只有 0 和 1 的话,可以用 boolean(true 或 false) 或者 byte(0 或 1,byte 的范围在 -128 ~ 127);状态如果较多,更推荐用 enum
boolean
true
false
byte
enum
这个boolean和int都可以。没什么区别的。
如果你只是用来表示状态的话, short 和 int 是没有任何区别的,不信你可以编译一下,看看字节码。
代码
和代码
得到的字节码是完全相同的!都会得到如下字节码,
看你使用场景, 如果用于对象属性或者sql的参数,最好用Integer。因为你可能没有初始化,用int会有默认值0(这个0可能不是你想要的)
状态只有 0 和 1 的话,可以用
boolean
(true
或false
) 或者byte
(0 或 1,byte
的范围在 -128 ~ 127);状态如果较多,更推荐用enum
这个boolean和int都可以。没什么区别的。