java - 使用 for 循环和 if 语句将字符串添加到 2D Arraylist

标签 java arraylist

遇到了一个小问题,我不完全确定为什么这段代码不起作用。

我有一个二维数组列表:

List<List<String>> matrix = new ArrayList<List<String>>();

我有一个按钮,可以根据用户输入将数组列表添加到矩阵中。但在添加用户输入之前,我需要按钮来搜索该字符串是否已存在。 我的代码不会产生任何错误,但除了第一个元素之外,它似乎无法区分现有字符串和不存在字符串。它会添加用户输入的所有内容,无论其是否存在。此外,只有当矩阵数组中已经有一些元素时,代码才会起作用,如果矩阵为空,则代码根本不起作用。我做错了什么?

   String name = NameTXT.getText(); 
   String amount = CountTXT.getText();

   for (int i = 0; i < matrix.size(); i ++){
     String search = matrix.get(i).get(0);
     if (name.equals(search)){
         OutputTXT.setText("Item already exists");
         break;
     } else {
         List<String> col = new ArrayList<String>();
         col.add(name);
         col.add(amount);
         matrix.add(col);
         OutputTXT.setText(amount +" "+ name +" added");
         break;
     }
   }

最佳答案

中断;意味着你完全停止了 for 循环。如果您只想转到矩阵中的下一项,可以使用 continue。

关于java - 使用 for 循环和 if 语句将字符串添加到 2D Arraylist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13835314/

相关文章:

java - 在 Eclipse 3.3 中加速内容辅助的方法

java - 使用 Maven 在 IntelliJ IDEA 中构建 JavaFX 应用程序

java - 如何将包含 POST 请求中的文件的 MultiValueMap 发送到 Spring rest web 服务?

java - 人物提取挑战

android - 如何在比较用户在android中输入的值时忽略数据库中的空值

java - 如何在游戏循环中使用 repaint() 方法

java - 在 Eclipse 中放置 config.properties 和 log4j.xml 的位置

java - 我的数组列表中的所有对象都发生了变化

java - 删除 CSV 文件中的行

android - 使用 Parcelable 通过 Intent 传递 ArrayList 时出现 NullPointerException