我知道JavaMail知道以下类型的IMAP文件夹:
Folder.HOLDS_MESSAGES(等于常数1) 和 Folder.HOLDS_FOLDERS(等于常数2)。
所以,今天我做了:
int type = folder.getType();
在名为“草稿”的文件夹中,该文件夹应为类型2。
但变量类型包含值3,似乎没有在任何地方记录。
3型是什么意思?
答案 0 :(得分:4)
来自ApiDoc Folder.getType:
返回此文件夹的类型 是,这个文件夹是否可以容纳 消息或子文件夹或两者。该 返回值是整数位域 设置适当的位。
在这种情况下,3只是2 + 1的结果,这意味着您的文件夹包含HOLDS_MESSAGES和HOLDS_FOLDERS。
记住:int是一个位域。你必须这样检查:
if ((folder.getType() & Folder.HOLDS_FOLDERS) != 0)
等,不要使用==
作为运算符。