2013-03-01 87 views
0

我不知道爲什麼Arraylist存儲類似的對象。 請幫助我。先謝謝你。 我知道循環遊標或存儲在Arraylist中的邏輯有些問題。 數組列表是通過這種方式定義,Arraylist多次存儲相同的對象?

public ArrayList<Object> results=new ArrayList<Object>(); 

public ArrayList<String> arrTemp=new ArrayList<String>(); 

下面是我的代碼:

db = getReadableDatabase();// /////--->Here database is opened 
     cursor = db.rawQuery("Select symbol,date,open,high,Low,close from testTBL;", null); 

     if (cursor.getCount() != 0) { 

      while (cursor.moveToNext()) { 

       arrTemp.clear(); 

        arrTemp.add(cursor.getString(cursor.getColumnIndex("symbol"))); 
        arrTemp.add(cursor.getString(cursor.getColumnIndex("date"))); 
        arrTemp.add(cursor.getString(cursor.getColumnIndex("open"))); 
        arrTemp.add(cursor.getString(cursor.getColumnIndex("high"))); 
        arrTemp.add(cursor.getString(cursor.getColumnIndex("Low"))); 
        arrTemp.add(cursor.getString(cursor.getColumnIndex("close"))); 

       Log.v("arrayTemp inside while loop", ""+arrTemp); 

       results.add(arrTemp); 
       Log.v("Results stored", ""+results); 
      } 

       Log.v("Final Results", ""+results); 


      cursor.close(); 
     } 

      db.close(); 

以下是logcat的輸出:

03-03 02:35:38.614: V/arrayTemp inside while loop(337): [ACC, 25-Feb-13, 1,302.00, 1,321.00, 1,293.05, 1,305.60] 
03-03 02:35:38.614: V/Results stored(337): [[ACC, 25-Feb-13, 1,302.00, 1,321.00, 1,293.05, 1,305.60]] 
03-03 02:35:38.624: V/arrayTemp inside while loop(337): [ACC, 22-Feb-13, 1,300.05, 1,308.05, 1,295.00, 1,300.95] 
03-03 02:35:38.624: V/Results stored(337): [[ACC, 22-Feb-13, 1,300.05, 1,308.05, 1,295.00, 1,300.95], [ACC, 22-Feb-13, 1,300.05, 1,308.05, 1,295.00, 1,300.95]] 
03-03 02:35:38.649: V/arrayTemp inside while loop(337): [WIPRO, 25-Feb-13, 416.2, 425.8, 416.2, 419.1] 
03-03 02:35:38.649: V/Results stored(337): [[WIPRO, 25-Feb-13, 416.2, 425.8, 416.2, 419.1], [WIPRO, 25-Feb-13, 416.2, 425.8, 416.2, 419.1], [WIPRO, 25-Feb-13, 416.2, 425.8, 416.2, 419.1]] 
03-03 02:35:38.649: V/arrayTemp inside while loop(337): [WIPRO, 22-Feb-13, 404.5, 418.45, 403.15, 415.95] 
03-03 02:35:38.654: V/Results stored(337): [[WIPRO, 22-Feb-13, 404.5, 418.45, 403.15, 415.95], [WIPRO, 22-Feb-13, 404.5, 418.45, 403.15, 415.95], [WIPRO, 22-Feb-13, 404.5, 418.45, 403.15, 415.95], [WIPRO, 22-Feb-13, 404.5, 418.45, 403.15, 415.95]] 
03-03 02:35:38.654: V/arrayTemp inside while loop(337): [ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90] 
03-03 02:35:38.654: V/Results stored(337): [[ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90], [ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90], [ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90], [ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90], [ICICI, 25-Feb-13, 1,099.00, 1,101.85, 1,081.20, 1,093.90]] 
03-03 02:35:38.654: V/arrayTemp inside while loop(337): [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55] 
03-03 02:35:38.654: V/Results stored(337): [[ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55], [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55], [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55], [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55], [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55], [ICICI, 22-Feb-13, 1,077.05, 1,099.00, 1,077.05, 1,092.55]] 
03-03 02:35:38.666: V/arrayTemp inside while loop(337): [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15] 
03-03 02:35:38.666: V/Results stored(337): [[TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15], [TATA MOTORS, 25-Feb-13, 296.8, 301.25, 295.1, 299.15]] 
03-03 02:35:38.666: V/arrayTemp inside while loop(337): [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9] 
03-03 02:35:38.666: V/Results stored(337): [[TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9], [TATA MOTORS, 22-Feb-13, 294.95, 297.55, 289.85, 292.9]] 
03-03 02:35:38.674: V/arrayTemp inside while loop(337): [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55] 
03-03 02:35:38.674: V/Results stored(337): [[NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55], [NESTLE, 25-Feb-13, 4,606.40, 4,689.90, 4,600.00, 4,654.55]] 
03-03 02:35:38.674: V/arrayTemp inside while loop(337): [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10] 
03-03 02:35:38.684: V/Results stored(337): [[NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10], [NESTLE, 22-Feb-13, 4,644.65, 4,747.70, 4,608.00, 4,629.10]] 
03-03 02:35:38.684: V/arrayTemp inside while loop(337): [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85] 
03-03 02:35:38.684: V/Results stored(337): [[RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85], [RANBAXY, 25-Feb-13, 422, 435, 422, 433.85]] 
03-03 02:35:38.694: V/arrayTemp inside while loop(337): [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55] 
03-03 02:35:38.704: V/Results stored(337): [[RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55], [RANBAXY, 22-Feb-13, 412.5, 417, 411.1, 413.55]] 
03-03 02:35:38.704: V/arrayTemp inside while loop(337): [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35] 
03-03 02:35:38.704: V/Results stored(337): [[REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35], [REDDY, 25-Feb-13, 1,805.00, 1,814.00, 1,791.55, 1,804.35]] 
03-03 02:35:38.714: V/arrayTemp inside while loop(337): [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20] 
03-03 02:35:38.724: V/Results stored(337): [[REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20], [REDDY, 22-Feb-13, 1,815.00, 1,824.95, 1,790.10, 1,816.20]] 
03-03 02:35:38.724: V/arrayTemp inside while loop(337): [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45] 
03-03 02:35:38.735: V/Results stored(337): [[HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45], [HDFC, 25-Feb-13, 663.25, 665.2, 654.1, 656.45]] 
03-03 02:35:38.735: V/arrayTemp inside while loop(337): [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3] 
03-03 02:35:38.744: V/Results stored(337): [[HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3], [HDFC, 22-Feb-13, 662.2, 666.4, 657.55, 659.3]] 
03-03 02:35:38.744: V/arrayTemp inside while loop(337): [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10] 
03-03 02:35:38.754: V/Results stored(337): [[MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10], [MARUTI, 25-Feb-13, 1,442.00, 1,459.90, 1,438.25, 1,444.10]] 
03-03 02:35:38.764: V/arrayTemp inside while loop(337): [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40] 
03-03 02:35:38.774: V/Results stored(337): [[MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40], [MARUTI, 22-Feb-13, 1,463.40, 1,467.00, 1,430.10, 1,438.40]] 
03-03 02:35:38.774: V/arrayTemp inside while loop(337): [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7] 
03-03 02:35:38.785: V/Results stored(337): [[HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7], [HUL, 25-Feb-13, 456.05, 457.8, 450, 451.7]] 
03-03 02:35:38.785: V/arrayTemp inside while loop(337): [HUL, 22-Feb-13, 467, 467.15, 454, 455.4] 
03-03 02:35:38.804: V/Results stored(337): [[HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4]] 
03-03 02:35:38.814: V/Final Results(337): [[HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4], [HUL, 22-Feb-13, 467, 467.15, 454, 455.4]] 

回答

0

此行爲occures因爲你不是在results存儲arrTemp副本,但只是一個參考。你總是在同一個對象上操作,而不是單獨的列表。現在每次在while循環中調用arrTemp.clear()時,實際上都是清除存儲在results中的引用。然後,將新值添加到arrTemp,然後再次將另一個引用再次添加到arrTempresults,從而導致對results中的同一列表產生兩個(三,四...)相同的引用。

一個簡單的解決辦法是沒有聲明arrTemp作爲成員變量,但while循環這樣的範圍內:

while (cursor.moveToNext()) 
{ 
    ArrayList<String> arrTemp = new ArrayList<String>(); 

    //... 
    // fill arrTemp 
    //... 

    results.add(arrTemp); 
} 
+0

謝謝Thrakbad ... – 2013-03-09 05:21:18

0

你爲什麼不創建一個POJO類與表結構? 像

Class TestClass{ 
private String symbol; 
private String date; 
//etc 
} 

現在創建一個ArrayList包含此類對象的這樣

public ArrayList<TestClass> results=new ArrayList<TestClass>(); 
相關問題