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;
}
这让我分别得到每个字符。但可以得到其余的。
有人可以帮助我吗?
创建一个地图来存储所有字符(A 到 Z)和相应的数字,例如:
Map m = new HashMap();
m.put('A', 0);
m.put('B', 1);
遍历您输入的字符并检查该字符是否存在于上面的映射中。如果存在,则创建第二张地图,将该字符添加到第二张地图
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;
}
首先,对不起我的英语。
我正在尝试获取字符串的每个字母,并为每个字母赋予一些 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;
}
这让我分别得到每个字符。但可以得到其余的。
有人可以帮助我吗?
创建一个地图来存储所有字符(A 到 Z)和相应的数字,例如:
Map m = new HashMap(); m.put('A', 0); m.put('B', 1);
遍历您输入的字符并检查该字符是否存在于上面的映射中。如果存在,则创建第二张地图,将该字符添加到第二张地图
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;
}