【问题标题】:Array constants can only be used in initializers数组常量只能在初始化器中使用
【发布时间】:2011-11-18 17:36:44
【问题描述】:
public String[] getData(){
    String[] columns = {KEY_ROWID, KEY_TIME, KEY_TXT};
    Object[] data;

    Cursor c = database.query(DB_TABLE, columns, null, null, null, null, null);
    int iRow = c.getColumnIndex(KEY_ROWID);
    int iTime = c.getColumnIndex(KEY_TIME);
    int iTxt = c.getColumnIndex(KEY_TXT);
    for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){

        data[c.getPosition()+1] = {c.getString(iRow), c.getString(iTime), c.getString(iTxt)};

    }

    return data;
}

你几乎明白我想在这里做什么。无法从 for 循环更新数据变量。但我需要这样做。怎么样?

【问题讨论】:

  • 问题是什么?为什么要尝试将光标转换为数组?

标签: java arrays loops


【解决方案1】:

你只需要使用稍微不同的语法:

data[c.getPosition()+1] =
    new String[]{c.getString(iRow), c.getString(iTime), c.getString(iTxt)};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 2014-10-09
    • 2021-05-10
    • 2010-10-13
    • 2016-10-28
    • 2019-06-24
    相关资源
    最近更新 更多