我的代码工作正常,逻辑有效。但是,我想打印出两个文件夹中不同的实际文件的名称,这两个文件夹保存在$(document).on("click", "a[id^='del_']", function(e) {
var id_modelo = $(this).attr("id_mod");
var id_bloque = $(this).parent().attr("id");
});
和fileNames1
的数组中。我一直在寻找没有解决方案的答案。我刚刚离开了一段时间后,我刚刚回到Java的凹槽中。任何帮助,将不胜感激。
fileNames2
答案 0 :(得分:2)
这样做最简单,最优雅的方法是:
List<String> commonFiles= new ArrayList<String>(fileNames1);
commonFiles.retainAll(fileNames2);
Set<String> uniqueFiles = new HashSet<String>(fileNames1);
uniqueFiles.addAll(fileNames2);
uniqueFiles.removeAll(commonFiles);
答案 1 :(得分:0)
只需比较两个数组的每个元素。
for( int i = 0; i <= listOfFiles1.length - 1; i++)
{
for( int j = 0; i <= listOfFiles2.length - 1; i++)
{
if (listOfFiles1[i].equals(listOfFiles2[j]) )
{
System.out.println("Files names are the same");
}
else if (listOfFiles1[i]!= listOfFiles2[j])
{
System.out.println("Files names are not equal");
}
}
}
答案 2 :(得分:0)
创建并填充两个列表后,请使用以下代码: -
for(String fileName : fileNames1)
{
if(!fileNames2.contains(fileName))
{
System.out.println(fileName + " is not in both");
}
else
{
System.out.println(fileName + " is in both the lists");
}
}
此代码的作用是,对于第一个fileName
中的每个ArrayList
,它检查第二个ArrayList
是否包含相同的文件名,并相应地打印输出。