场景:有一个map存有ID和字符串,一个list存有字符串,判断map中的字符串是否在list中存在。如果不存在,则打印到控制台,并写入到一个文件中。
代码如下:
|
for (String obj : mapDB.keySet()) { //定义一个Boolean值,当匹配成功时,停止执行程序 //获取map中的字符串 //循环遍历获取list中的值, //判断map中的字符串是否在list集合中存在,如果存在,则flag=true,并停止执行程序。 //如果flag一直为false,说明map中的字符串在list中没有匹配的值,说明list中的字符串在list中不存在,则在控制台输出ID。 |
切记:局部变量的作用范围,如果flag写到两个for循环之外,那么flag的值一直为false,不能随着最里面的for循环发生变化。该flag的作用是在跳出最里层的for循环后判断flag是否为true,如果不为true,说明不匹配,则打印。
本文介绍了一种使用Java检查Map中的值是否存在于List中的方法。通过遍历Map和List,利用Boolean标志来判断是否存在匹配项,若不存在则输出ID并记录到文件。注意标志变量的作用域及正确使用。
1万+

被折叠的 条评论
为什么被折叠?



