我正在做作业,并且此代码引发错误,找不到符号
arraylist在方法外部声明,并且在if语句之前的for循环中工作。
我正在尝试在数组列表中搜索员工的姓氏,然后将索引返回给main方法以进行进一步处理。
public int searchEmployee(String lastN)
{
int noName = 0;
int lastNIndex = 0;
for (int i = 0; i < employeeList.size(); i++)
{
if (employeeList(i).getLastName().equalsIgnoreCase(lastN))
{
lastNIndex = i;
}
else
{
i = noName;
}
}
lastNIndex = noName;
return lastNIndex;
exit status 1
Directory.java:74: error: cannot find symbol
if (employeeList(i).getLastName().equalsIgnoreCase(lastN))
^
symbol: method employeeList(int)
location: class Directory
1 error
答案 0 :(得分:0)
答案 1 :(得分:0)
尝试employeeList.get(i),而不是employeeList(i)
答案 2 :(得分:0)
您应该使用方法 get 检索列表中指定位置的元素。有关更多信息,请参见https://docs.oracle.com/javase/8/docs/api/java/util/List.html#get-int-
代码的固定版本:
public int searchEmployee(String lastN) {
int noName = 0;
int lastNIndex = 0;
for (int i = 0; i < employeeList.size(); i++) {
if (employeeList.get(i).getLastName().equalsIgnoreCase(lastN)) {
lastNIndex = i;
} else {
i = noName;
}
}
}