【发布时间】:2014-07-30 12:00:12
【问题描述】:
我正在尝试获取字符串中每个单词的第一个字母:
String recInf = recursos.getString(nombre);
char[] tipoAbreviado = recInf.toCharArray();
tipoAbreviado[0] = Character.toUpperCase(tipoAbreviado[0]);
for (int i = 0; i < recInf.length() - 2; i++) {
// Es 'palabra'
if (tipoAbreviado[i] == ' ' || tipoAbreviado[i] == '.' || tipoAbreviado[i] == ',') {
// Reemplazamos
tipoAbreviado[i + 1] = Character.toUpperCase(tipoAbreviado[i + 1]);
}
nombre = tipoAbreviado.toString();
}
最后nombre的值是[C@3b1938ea,不是recInf中每个单词的首字母
【问题讨论】:
-
使用静态方法
Arrays.toString(tipoAbreviado)而不是tipoAbreviado.toString()。数组的toString方法不会创建“可理解的”String。