App Inventor:如何从列表中删除空项目?

App Inventor: How to remove empty items from list?

如何从 App Inventor 列表中删除所有空的或只有空白的项目?我找不到任何有用的东西。扩展或 App Inventor 功能都可以。

像这样创建您自己的自定义过程:
使用从末尾开始的 for each in list 循环(即列表的长度)递减 -1
在循环内检查每个项目,如果它是一个空字符串,如果是,从列表中删除该项目

您可能想尝试一些事情,如果您遇到困难,请编辑您的问题并post您尝试过的内容的屏幕截图...

for(Object obj : list){
   if(obj.isEmpty()){              // add other conditions if you have
      list.remove(obj);
   }
}

Object 替换为您的列表对象类型。例如:如果是 String,则在 for each 循环中将 Object 替换为 String

我找到了一个名为 ListUtils 的扩展程序,它正是我所需要的。它还具有许多其他功能。请参阅 link 了解更多信息。 https://amerkashi.wordpress.com/2017/03/05/shuffling-ordering-lists/

请使用下面提到的一些方法:-

正常arrayList.removeIf(item -> item == null || "".equals(item));

使用番石榴,您可以做到arrayList.removeIf(Strings::isNullOrEmpty);

使用 Apache Commons arrayList.removeIf(StringUtils::isEmpty);

最后,你可以试试下面的:-

List<String> list = new ArrayList<String>(Arrays.asList("", "Hi", null, "How"));
list.removeAll(Collections.singleton(null));
list.removeAll(Collections.singleton(""));