Java 如果语句在NetBeans中运行不正常

Java 如果语句在NetBeans中运行不正常,java,if-statement,netbeans,Java,If Statement,Netbeans,我把代码记在下面: private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: Integer intNumber = (Integer)jComboBox1.getSelectedIndex(); String text = null;

我把代码记在下面:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
    Integer intNumber = (Integer)jComboBox1.getSelectedIndex();
    String text = null;

    if (intNumber <= 3) {
        text = "Less than or equal to three";
    } else if (intNumber > 3) {
        text = "Bigger than three";
    }
    jLabel1.setText(text);
}                                        
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
//TODO在此处添加您的处理代码:
整数intNumber=(整数)jcombox1.getSelectedIndex();
字符串文本=空;
国际单项体育联合会(国际单项体育联合会编号3){
text=“大于三”;
}
jLabel1.setText(文本);
}                                        

但是如果我在Netbeans中运行这段代码,并在组合框中选择4(大于3),jLabel1会打印出“小于或等于3”,尽管它显然更大。有人能解释一下原因吗?

试试这段代码。您使用了
getSelectedIndex()
而不是
getSelectedItem()

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
//TODO在此处添加您的处理代码:
整数intNumber=(整数)jcombox1.getSelectedItem();
字符串文本=空;
国际单项体育联合会(国际单项体育联合会编号3){
text=“大于三”;
}
jLabel1.setText(文本);
} 

索引从
0
开始,这可能就是原因所在。如果您选择第一项
getSelectedIndex()
将返回
0
,我认为提图斯可能是对的。我敢打赌,您的组合框中会列出1、2、3、4、5、6等等。从JCombox1.getSelectedIndex()返回的索引将为您提供0、1、2、3、4、5等等。@Titus@Pherion非常感谢你们的帮助!这解决了我的问题!
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
    Integer intNumber = (Integer)jComboBox1.getSelectedItem();
    String text = null;

    if (intNumber <= 3) {
        text = "Less than or equal to three";
    } else if (intNumber > 3) {
        text = "Bigger than three";
    }
    jLabel1.setText(text);
}