如何检查Java中多个变量中哪一个变量不为空?
我正在开发一个网上购物网站。我在一个特定的部分中有许多(目前为3-4个)项目;我的冬装部分有3项。我有一个通用的buy now页面来显示所有这些商品 winter-wear.jsp如何检查Java中多个变量中哪一个变量不为空?,java,arrays,jsp,null,nullable,Java,Arrays,Jsp,Null,Nullable,我正在开发一个网上购物网站。我在一个特定的部分中有许多(目前为3-4个)项目;我的冬装部分有3项。我有一个通用的buy now页面来显示所有这些商品 winter-wear.jsp 为了了解,请求来自哪个页面,或者就我的项目而言,哪个项目的“立即购买”按钮点击了,我使用了这一行代码。值包含特定项目的价格,我知道像我这样存储价格是个坏主意 buy-now.jsp 现在,每个变量都包含特定项目的价格。但在点击任何特定商品的buy now按钮后,该特定商品的价格将存储在变量中,其他变量将包含n
为了了解,请求来自哪个页面,或者就我的项目而言,哪个项目的“立即购买”按钮点击了,我使用了这一行代码。值包含特定项目的价格,我知道像我这样存储价格是个坏主意
buy-now.jsp
现在,每个变量都包含特定项目的价格。但在点击任何特定商品的buy now按钮后,该特定商品的价格将存储在变量中,其他变量将包含null
这些变量的数目未知。其中,只有一个变量包含价格,而所有其他变量都包含空值
输出:
我如何知道哪个变量不是空的(因为我有未知数量的变量,我不能使用if语句来检查NOTNULL),并且只获取不可为空的变量的值;i、 e.特定项目的价格?我的意思是,有没有像anyonenotnull这样的函数,或者我们需要为此编写自己的方法
提前谢谢 总的来说,有更好的方法来解决这个问题,但是要快速回答您的问题,您可以使用
request.getParameterMap()
,然后循环处理每个结果
尝试一下下面的内容,稍微改变一下,你应该有一些有用的东西
String boughtItem;
for (Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
if (entry.getValue() != null) {
boughtItem = entry.getKey();
break;
}
}
字符串项;
for(条目:request.getParameterMap().entrySet()){
if(entry.getValue()!=null){
boughtItem=entry.getKey();
打破
}
}
<%
String blackjacket = request.getParameter("black-jacket");
String graysweatshirt = request.getParameter("gray-sweatshirt");
String bluehudi = request.getParameter("blue-hudi");
%>
String boughtItem;
for (Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
if (entry.getValue() != null) {
boughtItem = entry.getKey();
break;
}
}