java - 在 Java 中创建并迭代字符串列表

标签 java android list arraylist

我正在尝试创建大小动态的数组列表,添加元素并在完成后迭代它们。目前我的代码是:

    String activities = "SELECT DISTINCT phoneactivity from ContextTable030313";
    ArrayList<String> myActivities = new ArrayList();

    Cursor cursor2 = db.rawQuery(activities, null);
    // looping through all rows and adding to list
    if (cursor2.moveToFirst()) {
        do {
            myActivities.add(cursor.getString(cursor2.getColumnIndex("ts")));

        } while (cursor2.moveToNext());
    }

但是它无法在 do 循环中运行。我相信我声明了一些错误的内容,并且收到以下警告:

- ArrayList is a raw type. References to generic type ArrayList<E> should be parameterized
    - Avoid object allocations during draw/layout operations (preallocate and reuse instead)
    - Type safety: The expression of type ArrayList needs unchecked conversion to conform to 
     ArrayList<String>

但我不明白为什么这不起作用。

最佳答案

问题似乎是这样的:

Type safety: The expression of type ArrayList needs unchecked conversion to conform to ArrayList

这指出了这行代码:

ArrayList<String> myActivities = new ArrayList();

您应该将该行更改为:

ArrayList<String> myActivities = new ArrayList<String>();

换句话来说,您可以替换此代码段:

  if (cursor2.moveToFirst()) {
        do {
            myActivities.add(cursor.getString(cursor2.getColumnIndex("ts")));

        } while (cursor2.moveToNext());
    }

这样:

  while (cursor2.moveToFirst()) {       
        myActivities.add(cursor.getString(cursor2.getColumnIndex("ts")));       
    }

关于java - 在 Java 中创建并迭代字符串列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15217318/

相关文章:

java - 如何使用 iText 在 pdf 上附加签名?

java - 如何在 Java 中创建指向引用变量的指针变量?

java - 无法解析方法 'assertThat(int)'

python - 创建一个具有列表汇总值的字典/合并两个不同的字典以汇总值

java - Facelet dataTable : method not found in backing bean, 尝试将实例发送回 bean

java - 在netbeans中使用maven java应用程序制作可执行jar

javascript - 如何为 API 15 启用 javascript webview

android - 如何自定义ActionBar背景图片?

python - 如何按升序对这个 float 数值列表进行排序?

r - 在 R 中创建多个相同(相同维度)矩阵的列表