Java 字符串数组元素与整数数组的映射

Java 字符串数组元素与整数数组的映射,java,arrays,mapping,Java,Arrays,Mapping,我有一个整数数组和一个字符串,字符串有p和N个字符, 我想将字符串的元素映射为相应的整数元素。 例如int数组=1,2,3,4,5,字符串有PPNPN P->1,P->2,N->3,P->4,N->5 int数组[]={1,2,3,4,5}; 字符串s1=“PPNPN”; 字符串[]数组1=新字符串[s1.length()]; 对于(int i=0;i

我有一个整数数组和一个字符串,字符串有p和N个字符, 我想将字符串的元素映射为相应的整数元素。 例如int数组=1,2,3,4,5,字符串有PPNPN P->1,P->2,N->3,P->4,N->5

int数组[]={1,2,3,4,5};
字符串s1=“PPNPN”;
字符串[]数组1=新字符串[s1.length()];
对于(int i=0;i对于(int i=0;i您不能在HashMap中使用相同的键。向HashMap中已存在的键添加新值将覆盖以前的值。
看,我为你做了另一个解决方案

类表意符
{
公共静态void main(字符串[]args)引发java.lang.Exception
{
int数组[]={1,2,3,4,5};
字符串s1=“PPNPN”;
char[]array1=s1.toCharArray();
String out[]=新字符串[array1.length];
for(int i=0;i”+数组[i];
}
for(字符串val:out)
{
系统输出打印项次(val);
}   
}
}

一个映射不能多次使用同一个键。如果您放置一个已经存在的键,它只会覆盖该键的现有值。除了映射之外,还有其他方法吗?您可能需要使用
映射
或类似方法,以便用一个键存储一组值。请先了解
映射
接口的行为。嘿,先生,实际上这是我评估的一部分,其中P表示正,N表示负,所以我必须使所有元素映射为N负,并返回值的和。所以,你需要所有负值的和?负数和正数的和,并返回它。谢谢先生,这相当于总结了我的问题:)
int array[]={1,2,3,4,5};
String s1="PPNPN";

String []array1=new String[s1.length()];

for(int i = 0; i < s1.length(); i++)
{
    array1[i] = String.valueOf(s1.charAt(i));
}
Map <String,Integer> map1=new HashMap<String,Integer>();

for(int i=0;i<array1.length;i++)
{
    map1.put(array1[i],array[i]);   
}

for (String key : map1.keySet()) 
{
    System.out.println(key + " " + map1.get(key));
}   
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {

        int array[]={1,2,3,4,5};
        String s1="PPNPN";

        char []array1=s1.toCharArray();
        String out[] = new String[array1.length];
        for(int i = 0; i < array1.length; i++)
        {
            out[i] = array1[i]+" -> "+array[i];
        }


        for (String val : out) 
        {
            System.out.println(val);
        }   
    }
}