什么是JavaMail Folder类型3?

时间:2010-12-11 10:27:03

标签: java imap javamail

我知道JavaMail知道以下类型的IMAP文件夹:

Folder.HOLDS_MESSAGES(等于常数1) 和 Folder.HOLDS_FOLDERS(等于常数2)。

所以,今天我做了:

int type = folder.getType();

在名为“草稿”的文件夹中,该文件夹应为类型2。

但变量类型包含值3,似乎没有在任何地方记录。

3型是什么意思?

1 个答案:

答案 0 :(得分:4)

来自ApiDoc Folder.getType

  

返回此文件夹的类型   是,这个文件夹是否可以容纳   消息或子文件夹或两者。该   返回值是整数位域   设置适当的位。

在这种情况下,3只是2 + 1的结果,这意味着您的文件夹包含HOLDS_MESSAGES和HOLDS_FOLDERS。

记住:int是一个位域。你必须这样检查:

 if ((folder.getType() & Folder.HOLDS_FOLDERS) != 0)

等,不要使用==作为运算符。