Java 向映射添加字符串

Java 向映射添加字符串,java,Java,我有两个大小相同的String数组 我需要制作一张带有名称和值的地图。如何将它们添加到地图 String[] labelNames = request.getParameterValues("labelName"); String[] labelValues = request.getParameterValues("labelValues"); Map<String,String> labels = new HashMap<>(); String[]labelName

我有两个大小相同的
String
数组

我需要制作一张带有名称和值的
地图。如何将它们添加到
地图

String[] labelNames = request.getParameterValues("labelName");
String[] labelValues = request.getParameterValues("labelValues");
Map<String,String> labels = new HashMap<>();
String[]labelNames=request.getParameterValues(“labelName”);
字符串[]labelValues=request.getParameterValues(“labelValues”);
映射标签=新的HashMap();

您拥有大小相同的
数组,因此您可以使用相同的
for loop
对它们进行迭代,您将访问两个
上相同的
索引
,并
将它们放入
映射

for(int i=0; i<labelNames.length; i++){
    labels.put(labelNames[i], labelValues [i]);
}

for(int i=0;i如果有两个大小相同的数组,只需创建一个for循环,使用
labelName
labelValue

for(int i = 0; i < labelNames.length; i++) {
    labels.put(labelNames[i], labelValues[i]);
}

Java 7的解决方案-您可以使用带有单个索引的
for
循环结构同时前进到2个数组中

至于假设
labelNames.length==labelValues.length
通常最好总是检查它,以确保没有引入错误并得到意外的结果:

if(labelNames.length == labelValues.length) {
    int i;
    for(i = 0; i < labelNames.length; i++) {
        labels.put(labelNames[i], labelValues[i]);
    }
}
使用此代码:

Map<String,String> labels = new HashMap<>();
for(int i=0;i<labelNames.length;i++)
    labels.put(labelNames[i] , labelValues[i]);
Map labels=newhashmap();
对于(int i=0;i首先:

 Map<String,String> labels = new HashMap<String, String>();
Map labels=newhashmap();
然后:

for (int i=0; i < labelNames.length; i++) 
{
  labels.put(labelNames[i], labelValues[i]);
}
for(int i=0;i
这个答案已经有5次了,不需要花一两分钟来写一个答案。与此同时,其他用户可能会发布解决方案。如果
labelName
labelValues
数组的长度不一样,你希望发生什么?为什么不直接调用request.getParameterMap()?
 Map<String,String> labels = new HashMap<String, String>();
for (int i=0; i < labelNames.length; i++) 
{
  labels.put(labelNames[i], labelValues[i]);
}