2015-07-22 189 views
-1

如何使用循环来显示所有的ArrayList的元素,我的代码是什么样子如下:的Java:打印所有的ArrayList元素

ArrayList<String[]> theRecord = new ArrayList<String[]>(); 
PreparedStatement ps = conn.prepareStatement(strSQL); 
ResultSet rs = ps.executeQuery(); 

int columnCount = rs.getMetaData().getColumnCount(); 

while(rs.next()) 
{ 
    String[] row = new String[columnCount]; 
    for (int i=0; i <columnCount ; i++) 
    { 
     row[i] = rs.getString(i + 1); 
    } 
    theRecord.add(row); 
} 

我想环路theRecord和行得到的所有元素,列。

+0

什么是你的代码错误? –

+0

你需要一个复合循环,'theRecord'的外循环循环和'theRecord'内每个'String []'的内循环循环。 – MadProgrammer

+0

@SotiriosDelimanolis:代码没有错,我只需要显示出arraylist元素稍后在其他方法上操作它 – Teddybugs

回答

1
Iterator<String[]> iter = theRecord.iterator(); 
while(iter.hasNext()){ 
    String[] temp = iter.next(); 
    for(int i=0;i<temp.length;i++){ 
     //manipulate temp[i] 
    } 
} 

或另一个例子:的后者

import java.util.ArrayList; 
import java.util.List; 


public class ListString { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     String[] str = new String[2]; 
     str[0] = "a"; 
     str[1] = "b"; 

     List<String[]> val = new ArrayList<String[]>(); 
     val.add(str); 

     for(String[] s:val){ 
      for(int i=0;i<s.length;i++){ 
       System.out.println(s[i]); 
      } 
     } 

    } 

} 

输出是
一个
b

希望有所帮助。

+0

我用listIterator替换了getIterator,现在可以正常工作,找不到我的getIterator方法 – Teddybugs

+0

我的不好!它只是你试过的Record.iterator()或listIterator ....我写了那篇试图回忆的东西。对于下半年,我实际上写了代码:) – digidude

+0

谢谢,你的例子是有用的:) – Teddybugs

0

您可以通过使用方法ArrayList.get(int index)来访问ArrayList的每个元素。

在这种情况下,你会用它来遍历List的元素:

for(int i = 0; i < theRecord.size(); i++){ 
// Run over the elements in the List 
for(int j = 0; j < theRecord.get(i).length(); j++) 
// Run over the element itself. Through the indexes of the element Array. 
// And do whatever you want with it 
}