2016-04-27 10 views
-1

Ich habe Probleme beim Abrufen und Einfügen von ganzen Zahlen in eine ArrayList. Logcat zeigt nichtsInteger - ArrayList -

public void GetRecipes(String meal_cat_selected, ArrayList<String> User_Main_Ing) { 
     SQLiteDatabase db = this.getReadableDatabase(); 
     User_Main_Ingredients = User_Main_Ing; 
     for (int i = 0; i <User_Main_Ingredients.size(); i++) { 
      Log.i("User_Main_Ingredients", User_Main_Ingredients.get(i).toString()); 
     } 

     String mealcat=meal_cat_selected; 
     Cursor cursor_recipes = db.rawQuery("SELECT " + RECIPE_COLUMN_ID + " FROM " + RECIPES_TABLE_NAME + " where " + MEAL_CATEGORY + "=" + mealcat, null); 
     int i,id; 
     cursor_recipes.moveToFirst(); 
     while (cursor_recipes.isAfterLast() == false) { 
      recipes.add(cursor_recipes.getInt(cursor_recipes.getColumnIndex(RECIPE_COLUMN_ID))); 
      cursor_recipes.moveToNext(); 
     } 

     for (i = 0; i < recipes.size(); i++) { 
      Log.i("Recipes",Integer.toString(recipes.get(i))); 
     } 

     for (i = 0; i < recipes.size(); i++) { 
      id = recipes.get(i); 
      boolean result = checkrecipe(id); 
      if (result == true) { 
       matchedRecipes[i] = i; 
      } 
     } 
    } 
+0

Reverse die Bearbeitung ist dies falsch. – Priyamal

Antwort

2

Zu allererst Ihre Arraylist ist keine ganze Zahl ist Arraylist

ArrayList<String> User_Main_Ingredients; 

Veränderung, die zu

ArrayList<Integer> User_Main_Ingredients; 

und Sie können mit einer for-Schleife ganzen Zahlen erhalten

for(int ingredient : User_Main_Ingredients){ 
    System.out.println(ingredient); 
} 

i n Ihre Rezepte Liste ist bereits eine Ganzzahl arraylist, so dass keine Notwendigkeit der Konvertierung

for (int rec :recipes) { 
    System.out.println("Recipes"+rec); 
    } 
+0

Es ist nicht user_Main_Ingredients. Es ist das Rezept (Integer Array List) Es ist deklariert. Wie verwende ich diese for-Schleife? –

+0

Cursor cursor_recipes = db.rawQuery ("SELECT" + RECIPE_COLUMN_ID + "VON" + RECIPES_TABLE_NAME + "wo" + MEAL_CATEGORY + "=" + mealcat, null); int i, id; cursor_recipes.moveToFirst(); while (cursor_recipes.isAfterLast() == false) { rezepte.add (cursor_recipes.getInt (cursor_recipes.getColumnIndex (RECIPE_COLUMN_ID))); cursor_recipes.moveToNext(); } –