java中访问列表索引时出现索引越界异常

java中访问列表索引时出现索引越界异常,java,list,indexoutofboundsexception,Java,List,Indexoutofboundsexception,我有一个列表,当我尝试访问该列表的索引时,它会给出索引越界异常,当我用另一种方法打印该索引的值时,它会显示我无法理解的结果,当值位于该特定索引时,为什么会抛出java.lang.IndexOutOfBoundsException:index:0,Size:0 我的java代码是- public List<Vacc_vs6> refarray_vac1(String fdate,String ldate) throws SQLException, ParseException {

我有一个列表,当我尝试访问该列表的索引时,它会给出索引越界异常,当我用另一种方法打印该索引的值时,它会显示我无法理解的结果,当值位于该特定索引时,为什么会抛出java.lang.IndexOutOfBoundsException:index:0,Size:0

我的java代码是-

public  List<Vacc_vs6> refarray_vac1(String fdate,String ldate) throws SQLException, ParseException {

            st_jsp.clear();


           try
                {  
                  con = getConnection();
                  stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);


                         String vs1= "sql query";

                  stmt.executeQuery(vs1);
                   rs = stmt.getResultSet();

                   while (rs.next()) {
                       Vacc_vs6 ref = new Vacc_vs6();

                          ref.setLogtime(rs.getString(1));
                          ref.setBeam_current(rs.getString(2));
                          ref.setBeam_energy(rs.getString(3));
                          ref.setst4_vs6_bag1_rb(rs.getString(4));
                          ref.setst4_vs6_bag2_rb(rs.getString(5));
                          ref.setst4_vs6_bag3_rb(rs.getString(6));
                          ref.setst4_vs6_bag4_rb(rs.getString(7));
                          ref.setst4_vs6_bag5_rb(rs.getString(8));
                          ref.setst4_vs6_bag6_rb(rs.getString(9));
                          ref.setst4_vs6_bag7_rb(rs.getString(10));
                          ref.setst4_vs6_bag8_rb(rs.getString(11));
                          ref.setst4_vs6_bag9_rb(rs.getString(12));
                      st_jsp.add(ref);

                    }

                }
           catch( Exception e )
                    {
            System.out.println("\nException in refarray_vac1 "+e);
                    }
           List<Vacc_vs6> new_list=new ArrayList<Vacc_vs6>();
            double is = 9.5;
             double js = 10.5;
             int no=0;
        for(no=0;no<=10;no++)
            {
                String i= st_jsp.get(no).getBeam_current();//**Showing exception here**
                double im = Double.parseDouble(i) ;
                if(im>is && im<js) 
                 {
                    new_list.addAll(st_jsp);
                 }
                else
                {
                    new_list.addAll(st_jsp);
                }
                 is +=10;js +=10; 

                }

           return st_jsp;
          }
public List refarray_vac1(字符串fdate,字符串ldate)抛出SQLException,ParseException{
st_jsp.clear();
尝试
{  
con=getConnection();
stmt=con.createStatement(ResultSet.TYPE\u SCROLL\u SENSITIVE,ResultSet.CONCUR\u READ\u);
字符串vs1=“sql查询”;
执行程序(vs1);
rs=stmt.getResultSet();
while(rs.next()){
Vacc_vs6 ref=新的Vacc_vs6();
参考setLogtime(rs.getString(1));
参考setBeam_电流(rs.getString(2));
参考setBeam_energy(rs.getString(3));
参考设置4_vs6_bag1_rb(rs.getString(4));
参考设置4_vs6_bag2_rb(rs.getString(5));
参考设置4_vs6_bag3_rb(rs.getString(6));
参考设置4_vs6_bag4_rb(rs.getString(7));
参考设置4_vs6_bag5_rb(rs.getString(8));
参考设置4_vs6_bag6_rb(rs.getString(9));
参考设置4_vs6_bag7_rb(rs.getString(10));
参考设置4_vs6_bag8_rb(rs.getString(11));
参考设置4_vs6_bag9_rb(rs.getString(12));
st_jsp.add(ref);
}
}
捕获(例外e)
{
System.out.println(“\n重构中的异常”+e);
}
List new_List=new ArrayList();
双is=9.5;
双js=10.5;
int no=0;

对于(no=0;nois&&imis&&im您假设
st_jsp
至少包含11个元素:

    for (no=0;no<=10;no++) {
        String i= st_jsp.get(no).getBeam_current();

for(no=0;no在不知道有多少st_jsp列表的情况下循环到10

将您的循环替换为

     for(no=0;no<st_jsp.size();no++)

for(no=0;no@tiddirastogi我读了你的编辑。
if(im>is&&im)
    for (no=0;no<st_jsp.size();no++) {
        String i= st_jsp.get(no).getBeam_current();
     for(no=0;no<st_jsp.size();no++)