【问题标题】:syntax error on tokens, variableDeclarator expected instead令牌上的语法错误,应改为 variableDeclarator
【发布时间】:2013-01-10 20:19:15
【问题描述】:
SQLiteDatabase db = this.getWritableDatabase();
ContentValues cv = new ContentValues();
  cv.put(colDeptID, 1);
  cv.put(colDeptName, "Sales");
  db.insert(deptTable, colDeptID, cv);

  cv.put(colDeptID, 2);
  cv.put(colDeptName, "IT");
  db.insert(deptTable, colDeptID, cv);
                    db.close();

使用此代码,在放入每一行并收到此错误后,我在括号下得到一个红色下划线: 标记“(”的语法错误,删除此标记。

我还收到一条错误消息: 令牌上的语法错误,应改为变量声明器。有任何想法吗?我已经尝试了所有我知道的方法,但都没有奏效。

编辑: 我也得到 “关闭”的语法错误,此标记后应为标识符

我从教程中复制并粘贴了这段代码,所有 cmets 都说它有效,但我遇到了很多问题。感谢您如此快速的回复。

【问题讨论】:

  • 尝试进入项目 -> 清理
  • 这段代码是在方法还是构造函数中?
  • 清洁不起作用,不,不是。就在课堂上。
  • @HollisScriber :这就是为什么它不起作用的原因将它移动到一个方法中并调用该方法来插入记录
  • @HollisScriber : 请分享您可以找到此代码的教程链接

标签: java android syntax


【解决方案1】:

只有声明,例如:

SQLiteDatabase db = this.getWritableDatabase();
ContentValues cv = new ContentValues();

可以直接在类声明中。非声明,例如:

  cv.put(colDeptID, 1);
  cv.put(colDeptName, "Sales");
  db.insert(deptTable, colDeptID, cv);

必须在方法、构造函数、初始化程序块或静态初始化程序块内。在这种情况下,它们可能应该在构造函数或方法中。

【讨论】:

    【解决方案2】:

    Variable Declarator ID 表示 intstring 之类的东西。示例:int randomnum = 9 或类似的东西。

    希望这会有所帮助!

    【讨论】:

      【解决方案3】:

      将代码放在方法中,而不是直接放在类中。

      喜欢

      SomeRandomMethod(){
      SQLiteDatabase db = this.getWritableDatabase();
      ContentValues cv = new ContentValues();
        cv.put(colDeptID, 1);
        cv.put(colDeptName, "Sales");
        db.insert(deptTable, colDeptID, cv);
      
        cv.put(colDeptID, 2);
        cv.put(colDeptName, "IT");
        db.insert(deptTable, colDeptID, cv);
                          db.close();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-01-05
        • 1970-01-01
        • 2013-07-16
        相关资源
        最近更新 更多