做項目的過程中有個小的需求润讥,大概就是要判斷一個數(shù)據(jù)庫中查詢出來的結(jié)果集是否包含在用戶填寫的多個字段中,當時也未多想猖闪,就寫了個一個for循環(huán)嵌套萧朝。
public class checkNameTest {
public static void main(String[] args) {
List<String> oldName = new ArrayList<String>();
oldName.add("小明");
oldName.add("小芳");
oldName.add("張三");
List<String> newName = new ArrayList<String>();
newName.add("小芳");
newName.add("小芳b");
newName.add("小芳A");
String flag = "1";
for(int i = 0;i < oldName.size(); i++)
{
for(int j = 0; j < newName.size();j++)
{
if(newName.get(j).equals(oldName.get(i)))
{
flag = "0";
break;
}
}
if("0".equals(flag))
{
break;
}
}
System.out.println(flag);
}
}
結(jié)果后來需求一下變了胁镐,要求判斷用戶填寫的信息必須都包含在數(shù)據(jù)庫查詢出的數(shù)據(jù)中盯漂,for循環(huán)嵌套的方式就不太合適了帖渠,就用了contains方法
public class checkNameTest {
public static void main(String[] args) {
List<String> oldName = new ArrayList<String>();
oldName.add("小明");
oldName.add("小芳");
oldName.add("張三");
List<String> newName = new ArrayList<String>();
newName.add("小芳");
newName.add("小芳b");
newName.add("小芳A");
String flag = "1";
for (String name : newName) {
if(!oldName.contains(name))
{
flag = "0";
break;
}
}
System.out.println(flag);
}
}
此方法API 解釋
image.png