相同的代码,不同的结果,大家帮忙看看为什么解决思路

相同的代码,不同的结果,大家帮忙看看为什么privatevoidjtabdbkeyPressedUP(KeyEvente){if(e.getKeyCode()

相同的代码,不同的结果,大家帮忙看看为什么
private   void   jtabdbkeyPressedUP(KeyEvent   e)   {
                if(e.getKeyCode()==38)     //响应非数字键盘向上方向键
                        {
                                    if   (jtabdb.getSelectedRow()   -   1> =0)
                                            {  
                                                this.jtabdb.setRowSelectionInterval(jtabdb.getSelectedRow()-1   ,jtabdb.getSelectedRow()   );
                                                getjtabdbTOtxt();
                                            }
                               
                        }
        }
==========================================================
以上代码运行正常,以下有问题
==========================================================
private   void   jtabdbkeyPressedDOWN(KeyEvent   e){
                if(e.getKeyCode()==40)   //   响应非数字键盘向下方向键
                        {
                                    if(jtabdb.getSelectedRow()+1!=jtabdb.getRowCount())
                                              {  
                                                        this.jtabdb.setRowSelectionInterval(jtabdb.getSelectedRow()+1   ,jtabdb.getSelectedRow()   );
                                                        getjtabdbTOtxt();
                                              }    
                               
                      /*             if(jtabdb.getSelectedRow()   +1   !=jtabdb.getRowCount())
                                          {  
                                                    this.jtabdb.setRowSelectionInterval(jtabdb.getSelectedRow()   ,jtabdb.getSelectedRow()   );


                                                    jtabdb.getValueAt(jtabdb.getSelectedRow(),0);
                                                    this.getjtabdbTOtxt();
                                               
                                          }   */
                        }

  }
==========================================================
症状:选第一行读到Textfiled中时,显示的是上一行的数据
最后一行无法读出

[解决办法]
if(jtabdb.getSelectedRow()+1!=jtabdb.getRowCount())
改成以下语句试试?
if(jtabdb.getSelectedRow() + 1 < jtabdb.getRowCount())

看上去似乎第一行的行号为0,最后一行是jtabdb.getRowCount() - 1