如何将另一个java文件(或类)的名称放在方法名称旁边?

如何将另一个java文件(或类)的名称放在方法名称旁边?,java,arraylist,methods,count,compiler-errors,Java,Arraylist,Methods,Count,Compiler Errors,我的教授列出了我应该写或修改的方法。她将其中一个列为Customer getCustomer(字符串n)。现在customer是另一个java文件的名称,稍后将使用该文件来确保代码正常工作,但我几乎可以肯定getCustomer是我应该创建该方法的名称。下面我将复制并粘贴我为这个方法编写的代码,然后发布编译错误。请帮我编译这段代码 public void Customer getCustomer(String username){ for(int i=0; i<customerLis

我的教授列出了我应该写或修改的方法。她将其中一个列为Customer getCustomer(字符串n)。现在customer是另一个java文件的名称,稍后将使用该文件来确保代码正常工作,但我几乎可以肯定getCustomer是我应该创建该方法的名称。下面我将复制并粘贴我为这个方法编写的代码,然后发布编译错误。请帮我编译这段代码

public void Customer getCustomer(String username){
   for(int i=0; i<customerList.size(); i++){
   String holdingSpotForArrayEle;
   holdingSpotForArrayEle = customerList.get(i); 
   if (holdingSpotForArrayEle == username)
   return username;
   }
   }
(顺便说一句,小胡萝卜标志在getCustomer的g下方。) 如果您想摆脱customer,教授在方法的开头将customer包括在内,并将该方法称为customer getCustomer(字符串n)

方法的签名不正确

还要查看代码中的return语句

return username; // check type of username
当前签名将返回
字符串
,这也是
用户名
的类型:

public String getCustomer(String username)

要返回类型
客户
,应更新方法定义以使用:

return new Customer(); // just for example
然后匹配的方法签名将是

public Customer getCustomer(String username)

public void Customer getCustomer(String username){
您已经定义了2种返回类型,教授给了您要使用的确切方法签名:
Customer getCustomer(String n){…}
。另外,不要使用
==
来比较字符串。不要使用
holdingSpotForArrayEle==username
,而是使用
holdingSpotForArrayEle.equals(username)
。方法
getCustomer
应该返回
Customer
,因此之前的
void
毫无意义。因为现在java认为您正在声明一个名为
Customer
的方法,没有返回类型
void
,并且应该有
在它之后,但是它遇到了
getCustomer
标记。因此它在g处表示错误。您真正想要的是不要有
void
return new Customer(); // just for example
public Customer getCustomer(String username)