gpt4 book ai didi

java - 如何使用 java 8 过滤掉空值或 null 值?

转载 作者:行者123 更新时间:2023-12-02 01:54:08 25 4
gpt4 key购买 nike

我有一个参数映射,我试图通过将请求参数附加到 url 来构建完整的 url。

以下代码是我迄今为止从参数映射中提取键值的代码。

Map<String, String[]> parameters = request.getParameterMap();

String params = parameters.entrySet()
.stream()
.map(e -> e.getKey() + "=" + String.join(",", e.getValue()))
.collect(Collectors.joining("&"));
String url = requestUrl + "?" + params;

如果我仅将值传递给 year,我的网址当前会打印类似于以下内容的内容参数:

/student/query?Id=&grade=&year=2018

我想打印如下内容:

/student/query?year=2018

如果我不传递某个参数的值,我不希望它被打印。

我该如何解决这个问题?

最佳答案

您可以使用filter只保留包含非空字符串的 String[]:

            .filter(e -> {
String[] value = e.getValue();
if (value == null || value.length == 0) {
return false;
} else {
for (String element : value) {
if (element != null && !element.isEmpty()) {
return true;
}
}
return false;
}
})

关于java - 如何使用 java 8 过滤掉空值或 null 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52557777/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com