JAVA,MySQL - 如何返回和调用ArrayList

时间:2016-07-14 12:02:37

标签: java mysql arraylist

我是JAVA的初学者。如何返回ArrayList值并调用其他类? 我不知道该怎么办.... 这是我的代码。

public ArrayList<String> deleteList(String filename){

       Connection conn = null;
       Statement stmt = null;
       int i=0;
       ArrayList<String> d_list = new ArrayList<String>();

       try{
          conn = getConnection();

          System.out.println("Creating statement...");
          stmt = conn.createStatement();

          String sql;
          sql = "select f_name,access_time,"
                + "(select count(*) + 1 from c_DB where access_time>c.access_time) as rank "
                + "from c_db as c having rank >= 8 order by rank";

          ResultSet rs = stmt.executeQuery(sql);

          while(rs.next()){

             String A = rs.getString("f_Name");
             d_list.add(i,A);
             i++;
          }
          /*for(int j=0;j<d_list.size();j++){
              System.out.print("\n" +d_list.get(j));
          } */        
          rs.close();
          stmt.close();
          conn.close();
       }catch(SQLException se){
          se.printStackTrace();
       }catch(Exception e){     
          e.printStackTrace();
       }
       System.out.println("\nDeletelist");         
    return d_list;            
}

我想返回d_list并使用。

public class CacheManager {
    public void DeleteCache(){

        ArrayList<String> d_name= new ArrayList<String>();
        DBManager name =new DBManager();
        for(int i=0;i<d_name.size();i++){
            d_name.addAll(i,name.deleteList(d_list));
        }
        for(int j=0;j<d_name.size();j++){
              System.out.print("\n" +d_name.get(j));
          }

    }
    public void SendList(){             
    }   

    public static void main(String[] args)
    {
        CacheManager c = new CacheManager();
        c.DeleteCache();
    }
}

但总是错误创建方法!! .. 我不知道如何修复DeletCache()部分。 Plase帮助我。谢谢。

1 个答案:

答案 0 :(得分:0)

在while循环和其他地方添加到List的方式有误。

它应该是

      while(rs.next()){
         String A = rs.getString("f_Name");
         d_list.add(A);
      }

你不需要柜台。