所以我试图在我的代码中访问数组的内容,该代码在if语句中初始化和decalred。
这是代码
String Columns[]=new String[records.size()];
if(records.size()==3){
Columns={"Forename","Surname","Salary"};
}
else{
Columns={"Forename","Surname"};
}
String Query[]=new String[records.size()];
for(int i=0; i<records.size(); i++)
{
Query[i]="UPDATE table SET "+Columns[i]+"='"+records.get(i)+"' WHERE StaffID="+id;
}
我得到错误'非法开始表达'和'不是声明'。所以,当我尝试在if语句中定义它时,就像这样......
if(records.size()==3){
String Columns[]={"Forename","Surname","Salary"};
}
else{
String Columns[]={"Forename","Surname"};
}
String Query[]=new String[records.size()];
for(int i=0; i<records.size(); i++)
{
Query[i]="UPDATE table SET "+Columns[i]+"='"+records.get(i)+"' WHERE StaffID="+id;
}
我得到了这个:找不到符号列。
有关如何编译此代码的任何建议吗?
感谢所有反馈。提前谢谢。
答案 0 :(得分:2)
事先声明变量:
String[] columns;
if (records.size()) {
// set values
} else {
// set other values
}
// do code logic