读书人

求救!为什么只打印内存中的地址解决方

发布时间: 2011-12-31 23:50:30 作者: rapoo

求救!~~为什么只打印内存中的地址
package com.wish;

import java.sql.*;
import java.util.*;

public class test1 {
public static void main(String[] args){
List list=new ArrayList();
Connection conn=connectionFactory.getconnection();
try {
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery( "select * from t_topic ");

while(rs.next()){
String[] a={rs.getString(1),rs.getString(2),rs.getString(3),rs.getString(4),rs.getString(5)};
list.add(a);

}
for(int i=0;i <list.size();i++){
System.out.print(list.get(i));
}
st.close();
rs.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}


}
}


[解决办法]
System.out.print(list.get(i));

返回回来的是一个Object的类型,而不是String[]的类型,所以打印的是它的内存地址.你用一个String[]类型的引用去接收list.get(i)返回值,并把它转成String[]的类型,就可以打印里面的数据了.

读书人网 >Java Web开发

热点推荐