我试图了解java.nio。我正在制作简单的回显服务器。
假设我们得到了keyCycler-它是迭代器,然后:

SelectionKey key = (SelectionKey)keyCycler.next();
//Retrieve set of ready ops for
//this key (as a bit pattern)...
int keyOps = key.readyOps();
if ((keyOps & SelectionKey.OP_ACCEPT)== SelectionKey.OP_ACCEPT)


我想知道这个

if ((keyOps & SelectionKey.OP_ACCEPT)== SelectionKey.OP_ACCEPT)


总是等于这个

    if(key.isAcceptable())


如果不是,则它们是不同的。可能我把整个事情弄错了..

最佳答案

source code进行比较:

return (readyOps() & OP_CONNECT) != 0;


由于OP_CONNECT的位掩码具有互斥位,因此这与您的代码相同。

关于java - 这些语句是否相等?(java.nio),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36694901/

10-12 04:17