直接打印返回值为List类型时的错误
来源:优易学  2011-11-25 12:26:39   【优易学:中国教育考试门户网】   资料下载   IT书店
  直接打印返回值为List<String[]>类型时的错误
  [[Ljava.lang.String;@157f0dc,[Ljava.lang.String;863399,[Ljava.lang.String;@a59698,[Ljava.lang.String;@141d683]这样的错误提示!!!!
  如分页的例子:Access数据库为名为fen,表名是goods,青年人网提示数据源为:fen
  package fen;
  import java.sql.*;
  import java.util.*;
  public class Fen
  {
  // 得到总页数
  public static int getTotalPage(int spanPerPage)
  {
  int totalpages=0;
  try
  {
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  Connection con=DriverManager.getConnection("jdbc:odbc:fen","","");
  Statement st=con.createStatement();
  ResultSet rsrows=st.executeQuery("select count(gid) from goods");
  rsrows.next();
  int rows=rsrows.getInt(1);
  totalpages=rows/spanPerPage+((rows%spanPerPage==0)?0:1);
  System.out.println("totalrows is:"+rows);
  rsrows.close();
  st.close();
  con.close();
  }
  catch(Exception e)
  {
  e.printStackTrace();
  }
  return (totalpages);
  }
  public static List<String[]> getPageContent(int page,int spanPerPage)
  {
  ArrayList<String[]> al=new ArrayList<String[]>();
  try
  {
  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  Connection con=DriverManager.getConnection("jdbc:odbc:fen","","");
  Statement st=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
  ResultSet rs=st.executeQuery("select gid,gname from goods");
  int first=spanPerPage*(page-1);//得到上一页结束的行数
  if(first!=0)
  {
  rs.absolute(first);//行坐标移动到指定的位置
  }
  int c=0;
  while(c<spanPerPage&&rs.next())
  {
  String[] onegood =new String[2];
  for(int i=1;i<=onegood.length;i++)
  {
  onegood[i-1]=rs.getString(i);
  }
  c++;
  al.add(onegood);
  }
  rs.close();
  st.close();
  con.close();
  }
  catch(Exception e)
  {
  e.printStackTrace();
  }
  return al;
  }
  public static void main(String args[])
  {
  System.out.println(getTotalPage(6));
  System.out.println("=========================================");
  //stem.out.println(getPageContent(1,4));直接打印返回值为List<String[]>类型时的错误
  List<String[]> goodsinfo=getPageContent(1,15);
  Iterator it=goodsinfo.iterator();
  System.out.println("gid"+"\t"+"gname");
  System.out.println("-----------------------------------------");
  while(it.hasNext())
  {
  String[] ginfo=(String[])it.next();
  for(String g:ginfo)
  {
  System.out.print(g+"\t");
  }
  System.out.println();
  }
  }
  }

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训