对于循环变量问题

use*_*057 0 java android for-loop syntax-error

我已经开发了以下for循环来设置下拉列表中的数据.如果我在.get()方法上使用数字来选择和比较单击哪个项目,这很有效,但显然这对于​​设置的整数值是没用的.

我收到的错误是'a'变量无法解析为变量.

我真的不确定为什么呢?

这是代码:

List<String> list = new ArrayList<String>();
list.add("-");
list.add("Medical");
list.add("Business");
list.add("Family");
list.add("Other");
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
editTime.setAdapter(dataAdapter);

for(int a = 0; a < list.size(); a ++);
{
    // Error on the 'a' variable - cannot be resolved to a variable.    
    if(typeReturned == list.get(a));
    {
        // Error on the 'a' variable - cannot be resolved to a variable.
        editTime.setSelection(a);

    }
}
Run Code Online (Sandbox Code Playgroud)

jlo*_*rdo 8

for循环后你有一个不必要的分号:

for(int a = 0; a < list.size(); a ++);
Run Code Online (Sandbox Code Playgroud)

如果不删除它,则与写入相同:

for(int a = 0; a < list.size(); a ++) { }
// a isn't in scope here any more.
Run Code Online (Sandbox Code Playgroud)

你的if病情后也有同样的错误.你也必须摆脱那个分号.

此外,我认为typeReturned是一个String,你正在比较它==.这是个坏主意.您必须使用.equals(),如果要检查两个字符串是否具有相同的内容,请参阅:

我如何比较Java中的字符串