java if语句中的ComboBox

java if语句中的ComboBox,java,Java,今天我学习了ComboBox主题,但不理解代码中的if语句。这个if语句是如何工作的。请解释一下 class ItemChangeListener implements ItemListener{ @Override public void itemStateChanged(ItemEvent event) { if (event.getStateChange() == ItemEvent.SELECTED) { Object item = ev

今天我学习了ComboBox主题,但不理解代码中的if语句。这个if语句是如何工作的。请解释一下

class ItemChangeListener implements ItemListener{
    @Override
    public void itemStateChanged(ItemEvent event) {
       if (event.getStateChange() == ItemEvent.SELECTED) {
          Object item = event.getItem();
          // do something with object
       }
    }       
}

只要组合框中的项目状态发生更改,就会调用
itemStateChanged
方法

if语句,
if(event.getStateChange()==ItemEvent.SELECTED){
正在检查到底更改了什么。它正在检查更改是否是选中了某个项

然后,在if语句块内,一旦代码确定确实选择了某个项,代码将继续确定实际选择了哪个项


此代码演示了您的代码如何处理组合框内选择的更改,并且当选择项目时,您的自定义代码将执行与应用程序更相关的操作。

当您更改组合框中的选择时,
itemStateChanged
将触发两次:第一次取消选择的项目的时间(
event.getStateChange()==ItemEvent.deselected
),第二次选择的项目(
event.getStateChange()==ItemEvent.selected


换句话说,
if
需要检查
是当前选择还是旧选择。

存在多个itemState更改,这就是if命令过滤掉的内容:您只关心组合框的选择。对于此类事件,实际选择的项是
event.getItem()