在我的应用程序中,我有一个String类型的值列表,我遍历它并将每个值与另一个字符串进行比较,如果它为true,则返回true值,否则返回false。Java for循环迭代
List<String> roleNames = new ArrayList<String>();
roleNames.add("AAA");
roleNames.add("MMM");
for (int i=0 ; i<roleNames.size();i++){
// if(loggedInRole.equals(roleNames.get(i))){
if("AAA".equals(roleNames.get(i))){
enableLink = "true";
}
else {
enableLink = "false";
}
}
在我上面的代码中我期待结果为true,但在第二次迭代中,它返回结果为false。如何解决这个问题?
那么在第二次迭代的值是“MMM”,而不是“AAA”是......真的是你完整的循环?请注意,你实际上没有*返回任何东西... –
为什么你没有声明enableLink作为布尔值? – Will
提示:代替循环'ArrayList',你可以只有'enableLink = roleNames.contains(“AAA”);' –