java - 如何在Java中的列表列表中插入和检查列表?

标签 java list

我有一个场景,我需要维护一个列表列表并根据它进行一些操作。我正在尝试获取以下类型的列表:

[{peter,se,red},{peter,da,red},{mark,se,red}]

我首先创建一个列表来获取值,然后将此列表插入到列表列表中(如果它尚不存在)。例如,如果 {peter,se,red} 再次出现,则不应插入。提供了以下代码片段:

ArrayList<ArrayList<String>> listOfList = new ArrayList<ArrayList<String>>();
ArrayList<String> singleList = new ArrayList<String>();

void someFunction() {
  singleList.add("val1");
  singleList.add("val2");
  singleList.add("val3");

 if(listOfList.containsAll(singleList)) {
    <<some operation>>
 } else {
   listOfList.add(singleList);
   <<some operation>>
 }
 //clearing the list, so it can be freshly used 
 //upon successive invocation of the function
 singleList.clear();    

现在,即使我两次传递同一个列表,系统也只会坚持其他部分。有人可以告诉我哪里出了问题吗?另外,还有其他更好的方法来实现这个任务吗?

最佳答案

您可以使用HashSet<ArrayList<String>> ,也许这会起作用?或者您可以使用.contains()检查 List 是否包含该元素而不是 containsAll 的方法

关于java - 如何在Java中的列表列表中插入和检查列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42307224/

相关文章:

python - 有没有更有效的方法来重写多个 if-else 语句

java - Greenfoot 编程 - Actor 行为

java - 无论如何要为 Tomcat 32 位设置更多的最大内存?为什么在 1GB 和 1.6GB 有硬墙限制

java - 在基于 Java 的 Azure 网站中使用 SendGrid

arrays - JDK 的数组与 Guava 的 ImmutableList

python - 如何制作 csv 文件的列表

java - HashSet contains() 方法

java - NoSuchElementException:未找到行 - Scanner Java

c++ - 列表迭代器 Remove()

python - 以更快的方式转换 numpy 数组中的字符串列表