这个按位运算符的实现有何意义?

Mas*_*per 0 java swing bit-manipulation operators

在之前关于如何最大化JFrame的问题中,我看到了这段代码并且它起作用了.我拿出了

name.getExtendedState()
Run Code Online (Sandbox Code Playgroud)

它仍然有效?使用"getter"和OR符号可以实现什么?

name.setExtendedState(name.getExtendedState()|JFrame.MAXIMIZED_BOTH);
Run Code Online (Sandbox Code Playgroud)

Chr*_*ung 5

使用name.getExtendedState()|JFrame.MAXIMIZED_BOTH意味着您要添加 MAXIMIZED_BOTH到现有的扩展状态.如果你JFrame.MAXIMIZED_BOTH,那意味着你只用那个位替换扩展状态,并丢弃当前扩展状态的任何东西.