为了账号安全,请及时绑定邮箱和手机立即绑定

将 while 循环替换为每个

将 while 循环替换为每个

呼啦一阵风 2023-05-24 17:36:09
如何用 Java 中的每个循环替换下面的 while 循环?JSONObject postParameters = new JSONObject();Map parameterMap = httpRequest.getParameterMap();Iterator<Map.Entry<String, String[]>> it = parameterMap.entrySet().iterator();while (it.hasNext()) {    Map.Entry<String, String[]> entry = it.next();    if(entry.getValue().length == 1){        postParameters.put(entry.getKey(), entry.getValue()[0].toString());    }    else{        JSONArray valueList = new JSONArray();        for(String value : entry.getValue()){            valueList.add(value.toString());        }        postParameters.put(entry.getKey(), valueList);    }}基本上我想让它更具可读性。
查看完整描述

2 回答

?
Helenr

TA贡献1780条经验 获得超3个赞

你可以像这样ForEach直接使用entrySet:


JSONObject postParameters = new JSONObject();

Map parameterMap = httpRequest.getParameterMap();

for (Map.Entry<String,String[]> entry : parameterMap.entrySet()){

    if(entry.getValue().length == 1){

        postParameters.put(entry.getKey(), entry.getValue()[0].toString());

    }

    else{

        JSONArray valueList = new JSONArray();

        for(String value : entry.getValue()){

            valueList.add(value.toString());

        }

        postParameters.put(entry.getKey(), valueList);

    }

}


查看完整回答
反对 回复 2023-05-24
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

JSONObject postParameters = new JSONObject();

Map<String, String[]> parameterMap = httpRequest.getParameterMap();

for (Map.Entry<String, String[]> entry : parameterMap.entrySet()) {

    if (entry.getValue().length == 1) {

        postParameters.put(entry.getKey(), entry.getValue()[0]);

    } else {

        JSONArray valueList = new JSONArray();

        for (String value : entry.getValue()) {

            valueList.add(value);

        }

        postParameters.put(entry.getKey(), valueList);

    }

}

你可以摆脱多余的 toString() 方法,并且else可以将最后一个块更改为更短的版本,考虑一次收集整个条目值并将其作为 JSONArray 放入 postParameters 中。


查看完整回答
反对 回复 2023-05-24
  • 2 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信