-6

我有一个小项目工作。情况如下。

我得到一个字符串,首先我必须将它们转换为等效数字并将它们相加。

数字如下

a=1,b=2,c=3....z=4. 

这里的另一个条件是

A==a==1; 

A 和 a 相同,其他字母 caps 和 small 相同。

谢谢

4

2 回答 2

5
String str = "ABcDe";
str = str.toUpperCase();//just to be sure you have only capital letters in your string

int sum=0;
for(int i=0;i<str.length();i++){//cycle until the string ends
    sum = sum + str.charAt(i)-64;//'A' in ascii is 65, so 65-'A' = 65-64=1, etc
}
于 2013-01-26T19:38:43.793 回答
0
    //your input string
    String string = "Aab";

    char offset1 = 'a';
    char offset2 = 'A';
    int sum = 0;
    StringBuilder stringCode = new StringBuilder();
    for (int i=0; i<string.length(); i++){
        int curSymbol = string.charAt(i);
        if (curSymbol >= offset1){
            //caps
            int symbolNumber = curSymbol-offset1+1;
            stringCode.append(symbolNumber);
            sum += symbolNumber;
        }else{
            int symbolNumber = curSymbol-offset2+1;
            stringCode.append(symbolNumber);
            sum += symbolNumber;
        }
        stringCode.append(" ");
    }
    System.out.println("Strung code = "+stringCode.toString());
    System.out.println("Sum = " + sum);
于 2013-01-26T19:50:41.753 回答