状态标识(比如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都可以。沒什麼差別的。