我有两个Arraylist RunningProcessList
AllProcessList
其包含以下值是
RunningProcessList:
Receiver.jar
AllProcessList:
Receiver.jar
Sender.jar
Timeout.jar
TimeourServer.jar
AllProcessList arraylist包含所有Java进程,RunningProcessList arraylist包含当前正在运行的进程。我想比较这两个arraylist并显示是否未运行该进程。例如,比较两个列表并要显示以下进程未运行。
Result:
Sender.jar
Timeout.jar
TimeourServer.jar
我使用了以下代码,但无法正常工作。
Object Result = null;
for (int i = 0; i <AllProcessList.size(); i++) {
for (int j = 0; j < RunningProcessList.size(); j++) {
if( AllProcessList.get(i) != ( RunningProcessList.get(j))) {
System.out.println( RunningProcessList.get(j)));
Result =RunningProcessList.get(j);
}
if(AllProcessList.get(i) != ( RunningProcessList.get(j))) {
list3.add(Result);
}
}
}
最佳答案
查看List的文档,尤其是removeAll()方法。
List result = new ArrayList(AllProcessList);
result.removeAll(RunningProcessList);
然后,您可以遍历该列表,并根据需要调用
System.out.println
,就像您在上面所做的那样……但这就是您想要的吗?