我正在尝试从两个数组中查找公用名称文件。我将两个不同文件夹的文件名保存在两个不同的数组中。
现在,我正在创建一个通用文件数组,其中将包含具有通用名称的文件。
filenames 1:包含文件夹1中文件的名称的数组。
filename 2:包含文件夹2中文件名的数组。
import java.io.File;
import java.util.*;
public class ListFiles1
{
public static void main(String[] args)
{
String path1 = "C:\\";
String path2 = "D:\\";
File folder1 = new File(path1);
File folder2 = new File(path2);
String[] f1=folder1.list();
File[] listOfFiles1 = folder1.listFiles();
File[] listOfFiles2 = folder2.listFiles();
ArrayList<String> fileNames1 = new ArrayList<>();
ArrayList<String> fileNames2 = new ArrayList<>();
for (int i = 0; i < listOfFiles1.length; i++)
{
if (listOfFiles1[i].isFile())
{
fileNames1.add(listOfFiles1[i].getName());
System.out.println(f1[i] + " is a file");
}
}
for (int j = 0; j < listOfFiles2.length; j++)
{
if (listOfFiles2[j].isFile())
{
fileNames2.add(listOfFiles2[j].getName());
}
}
ArrayList<String> commonfiles = new ArrayList<>();
for (int i = 0; i < listOfFiles1.length; i++)
{
for (int j = 0; i < listOfFiles2.length; j++)
{
String tempfilename1;
String tempfilename2;
tempfilename1=fileNames1[i];
tempfilename2 = fileNames2[j];
if(tempfilename1.equals(tempfilename2))
{
commonfiles.add(tempfilename1);
}
}
}
}
}
我写了这段代码,但是编译器给出了这个错误:
Main.java:52: error: array required, but ArrayList<String> found
tempfilename1=fileNames1[i];
^
Main.java:53: error: array required, but ArrayList<String> found
tempfilename2 = fileNames2[j];
^
PS:我是新手…
如果filenames1
是array
您不能使用ArrayList
method get(int i)
。
您需要使用来访问array
元素arrayName[elementIndex]
。
在您的情况下:
tempfilename1=filenames1[i];
tempfilename2=fileNames2[j];
代码不止一次返回0和公共数字。我想让它返回一个数组与公共数字一次!那么,如何返回一个数组,数组中的数字对两个数组都是通用的。我想返回{2,7,4}-类似这样的东西。当我试图返回数组时,我总是出现越界异常。谢谢,巴里
假设我有两个这种格式的数据帧(称它们为和): 我希望获得所有行的数据帧,这些行在和中有一个公共的。(即,如果同时位于和中,则在输出数据帧中包括这两行) 我能想到很多方法来解决这个问题,但它们都让我觉得笨拙。例如,我们可以在每个数据帧中找到所有唯一的s,创建每个数据帧的集合,找到它们的交集,用结果集过滤两个数据帧,并连接两个过滤后的数据帧。 也许这是最好的方法,但我知道熊猫很聪明。有没有更简单的方法
问题内容: 我们如何从两个ArrayList中删除公共值? 让我们考虑一下我有两个如下所示的Arraylist: 我想得到的结果是: 我该怎么做? 问题答案: 这是您可以用来完成任务的算法: 构造两个数组的并集 构造两个数组的交集 从联合中减去交集即可得到结果 Java集合支持,和。使用构建工会,构建交叉,并作减法,像这样的:
我已经读过一些其他的堆栈溢出线程: 在java中求两个多集的交集 我如何获得两个数组之间的交集作为一个新数组? 我试图检查两个数组以及它们的元素数(numElementsInX和numElementsInY),并返回一个包含数组x和y的公共值的新数组。他们的交集。 编辑代码
问题内容: 假设我有两个这种格式的数据框(分别称为和): 我正在寻找在和中具有共同点的所有行的数据框。(即,如果是在两个和,在输出中包括数据帧的两行) 我可以想到很多方法来解决这个问题,但是它们都使我感到笨拙。例如,我们可以在每个数据帧中找到所有唯一的,创建每个的唯一集合,找到它们的交集,使用结果集过滤两个数据帧,然后将两个过滤后的数据帧连接起来。 也许这是最好的方法,但是我知道熊猫很聪明。有没有
本文向大家介绍在C ++中的两个双链表中查找公共节点数,包括了在C ++中的两个双链表中查找公共节点数的使用技巧和注意事项,需要的朋友参考一下 假设我们有两个双向链表。我们必须在两个双向链表中都找到公共节点的总数。因此,如果两个列表像[15、16、10、9、7、17]和[15、16、40、6、9],则有三个公共节点。 使用两个嵌套循环遍历两个列表,直到列表的末尾,对于列表中的每个节点,检查它是否与