2014-11-04 98 views
-1

我需要使用布尔值根据字符串中的内容返回true或false。如果列表中包含“Penny”,它应该返回false,但我似乎无法完成此操作。任何建议或事情我搞砸了?通过字符串传递的布尔方法返回true或false

public class Purse 
{ 
private ArrayList<String> list = new ArrayList<String>(); 

public static void main(String [] args) 
{ 
    Purse c = new Purse(); 
    Scanner input = new Scanner(System.in); 
    c.addCoin("Quarter"); 
    c.addCoin("Dime"); 
    c.addCoin("Nickel"); 
    c.addCoin("Penny"); 

    System.out.println(c.toString()); 
} 

public void addCoin(String coinName) 
{ 
    list.add(coinName); 
} 

public boolean findCoin(String coinName) 
{ 

     if(list.contains("Penny")) 
     { 
      return false; 
     } 

     else 
     { 
      return true; 
     } 

} 

public String toString() 
{ 
    return this.getClass().getCanonicalName() + list.toString(); 
} 

} 
+2

Java!== JavaScript。 – Andy 2014-11-04 16:24:52

+0

你甚至没有叫'findCoin' – 2014-11-04 16:30:38

+0

你忘了告诉我们实际发生了什么,你也忘了告诉我们它成功的样子 – 2014-11-04 16:33:08

回答

1

你需要调用find方法来决定你想要的布尔值。

所以这样称呼它:

if (findCoin("mycoin")) { 
    System.out.println(c.toString()); 
} 

而且你定义扫描仪,以便我假设你需要从用户读取它,使用它。