2013-10-30 103 views
0

如何将检查的最后一个索引值的数组列表数组列表最后一个索引值进行核对

我在该列表中的实际值码

ArrayList<String> admin_pri = (ArrayList<String>) agent_userlist 
        .get("ISadmin"); 
boolean result = Manageusers.isadmin_check; 
      String Actual = " "; 
      if (result == true) {  
       Actual = "yes"; 
      } else {  
       Actual = "No"; 
      } 
      System.out.println("to verify Actual values contains in the list" 
        + admin_pri.get(admin_pri.size() - 1).contains(Actual)); 

可用,但布尔声明(。载有(实际)其产生假

如何将检查的最后一个索引值

感谢

prabu

+3

那么* admin_pri.get(admin_pri.size() - 1)'的值是什么?请注意,你已经有了'否'(带有大写字母),但'是'(带有小写字母开头) - 你确定它们是正确的吗? (我也鼓励你遵循Java的命名约定,避免与布尔文字相比较,在适当的地方使用条件运算符,并且更易读取你的代码。) –

+0

'if(result == true)'是多余的。 'if'检查真实和虚假;改用'if(result)'。阅读关于它[这里](http://codingbat.com/doc/java-if-boolean-logic.html) – ChiefTwoPencils

回答

1

问题是,您正在使用String.contains(CharSequence)而不是ArrayList包含。

当你打电话给admin_pri.get(admin_pri.size() - 1)时,你会得到列表中最后一个字符串,所以对结果调用contains

如果你想确保这个项目是在列表中,你应该叫:

boolean isContained = admin_pri.contains(Actual); 

如果要检查它出现在列表的最后一个元素,使用:

String lastElement = admin_pri.get(admin_pri() - 1); 
boolean isContainedLast = lastElement.equals(Actual); 
相关问题