java - 如何确定字符串列表是否包含 null 或空元素

标签 java string collections

在 Java 中,我有以下方法:

public String normalizeList(List<String> keys) {
    // ...
}

我想检查:

  • 本身不是null;和
  • 不为空(size() == 0);和
  • 没有任何 String 元素是 null;和
  • 没有任何 String 元素为空 ("")

这是一个实用程序方法,将进入“公共(public)”风格的 JAR(该类类似于 DataUtils)。这是我所拥有的,但我认为它不正确:

public String normalize(List<String> keys) {
    if(keys == null || keys.size() == 0 || keys.contains(null) || keys.contains(""))
        throw new IllegalArgumentException("Bad!");

    // Rest of method...
}

我认为对 keys.contains(null)keys.contains("") 的最后 2 次检查是不正确的,可能会引发运行时异常。 我知道我可以在 if 语句中循环遍历列表,并检查那里的空值/空值,但我正在寻找一个更优雅的解决方案(如果存在的话)。

最佳答案

 keys.contains(null) || keys.contains("")

如果您的列表有 null(或)空字符串,则不会抛出任何运行时异常和结果 true

关于java - 如何确定字符串列表是否包含 null 或空元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11992694/

相关文章:

java - Java 中引用变量大小的差异。 (列表与数组列表)

java - Spring 中 'Sort exceeded memory limit' MongoDb 的问题

java - Lucene OR 搜索使用 boolean 查询

python - 如何将我的 bytearray ('b\x9e\x18K\x9a' ) 转换为类似这样的东西--> '\x9e\x18K\x9a' <---只是 str ,而不是数组

html - 如何从 SQL Server 中的字符串中去除 HTML 标签?

将文件名与可选文件扩展名进行比较

用于最佳性能的 Java 集合

java - java hashTable 在版本 7 中是否仍然同步?

java - 什么时候应该在项目生命周期中使用 mvn release?

java - 用于求解小模型的 Cplex Java