2012-12-22 2 views
0

안드로이드 2.3.3 문제는 매우 간단합니다. 루프는 12 번 반복되는데, 논리로 11 번 반복해야합니다. 누군가 제발 문제를 발견 할 수 있니? 나는 무엇을 바라보고 있습니까? 여기 안드로이드에서 for 루프 반복 2.3.3

c = db.getData(); 

if(c.getCount() > 0) 
{ 
    c.moveToFirst(); 
    System.out.println("Cursor Values are ::: "+c.toString()); 
    int columCount = c.getColumnCount(); 
    System.out.println("Column Count is ::: "+columCount); 
    boolean isFound = false; 


    do 
    { 
     for(int iteCount = 0; i < columCount; iteCount++) 
     { 
      System.out.println("Loop ::: "+iteCount); 
      String tempString = c.getString(iteCount); 
      System.out.println("Item in TempString is :::"+tempString); 

      if(tempString != null && tempString.equalsIgnoreCase(tempCommand)) 
      { 
        alFirstIndex.remove(0); 
       System.out.println(c.getString(c.getColumnIndex("Command"))); 
       alFirstIndex.add(0, c.getString(c.getColumnIndex("Command"))); 
       isFound = true; 
       break; 
      } 
     } 
     System.out.println("Out of For Loop"); 

     if(isFound) 
     { 
      break; 
     } 

    }while(c.moveToNext()); 

는 로그 캣 ::::

12-22 09:13:08.219: I/System.out(25300): Column Count is ::: 11 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 0 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::ADD 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 1 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::add 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 2 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::and 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 3 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::had 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 4 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::ad 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 5 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::anddd 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 6 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::anndd 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 7 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::null 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 8 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::null 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 9 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::null 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 10 
12-22 09:13:08.219: I/System.out(25300): Item in TempString is :::null 
12-22 09:13:08.219: I/System.out(25300): Loop ::: 11 
12-22 09:13:08.219: E/CursorWindow(25300): Bad request for field slot 0,11. numRows = 18, numColumns = 11 

columnCount = 11, 루프 i = 0 시작하고 11 회 반복한다 의미 i < columCount을 반복한다로부터의 출력이지만, 이유는 FOR 들어가고 다시 루프 및 루프 Loop ::: 11

답변

6

인쇄 :

for(int iteCount = 0; i < columCount; iteCount++) 

당신은 iteCount하지 i 사용할 필요가 :

for(int iteCount = 0; iteCount < columCount; iteCount++) 
+0

감사합니다! 재미 있은 나는 그것을 놓쳤다. –

+0

기쁜 I는 도울 수 있었다! – Sam