将字符串转换为int和chars

时间:2014-10-09 23:06:12

标签: java

我不需要一个确切的解决方案因为这是家庭作业,但我遇到了一件事:

如果我有一个由3 a 2 b 1 c组成的字符串 我需要获取整数并添加它们,然后获取字符并将每个字符转换为数字等级,但我不知道如何做到这一点。没有nextChar()方法吗?

2 个答案:

答案 0 :(得分:2)

这是一个非常简单的选择。

我会让你完成如何处理每种不同的类型。

String[] contents = "3 a 2 b 1 c".split(" ");

int i = 0;
for (String c : contents) {
   if (i % 2 == 0) {
      // do something to handle the characters
   }
   else {
      // do something to handle the numbers
   }

   i++;
}

答案 1 :(得分:1)

在java中更容易,因为char和短数字意味着相同,你只需要强制简短:

int total = 0;
for(char a : "ABCDE".toCharArray()) {
    total += (short)a;
}

这将添加字符的ASCII值,如果您的字符有任意值,则只需添加转换地图:

Map<Character, Integer> charValues = new HashMap<>();
charValues.put('A', 5);
charValues.put('B', 7);
charValues.put('C', 15);
int total = 0;
for(char a : "ABCDE".toCharArray()) {
    total += charValues.get(a);
}