JAVA 给字符串的每个字符一个数值

JAVA give each char of a String a numeric value

首先,对不起我的英语。

我正在尝试获取字符串的每个字母,并为每个字母赋予一些 int 值。

例如:姓名 = Joao。 J=3, o=1, a=4, o=1.

稍后我将使用这些数字进行一些计算。

这就是我目前得到的:

static String separador(String nome){
        name = nome;
        char[] letras;
        letras = name.toCharArray();
        int qtd = letras.length;
        String fullName = "";

         for(int i=0; i<qtd; i++)
        {
            fullName = fullName + " " + letras[i];
        }

         return fullName;

    }

这让我分别得到每个字符。但可以得到其余的。

有人可以帮助我吗?

  1. 创建一个地图来存储所有字符(A 到 Z)和相应的数字,例如:

    Map m = new HashMap();
    m.put('A', 0);
    m.put('B', 1);
    
  2. 遍历您输入的字符并检查该字符是否存在于上面的映射中。如果存在,则创建第二张地图,将该字符添加到第二张地图

    static String separador(String nome){
    name = nome;
    char[] letras;
    Map tempMap = new HashMap();
    Map m = new HashMap();
    m.put('A', 0);
    m.put('B', 1); 
    letras = name.toCharArray();
    int qtd = letras.length;
    String fullName = "";
    
     for(int i=0; i<qtd; i++)
    {
      if(m.containsKey(letras[i])
        tempMap.put(letras[i], m.get(letras[i]))
    }
    
     return tempMap;
    

    }