對不起,如果標題是誤導或混亂,但這是我的困境。 我正在輸入一個字符串,並且想要爲字母表中的每個大寫字母(A = 1,.. Z = 26)賦值,然後在該字符串中添加每個字母的值。如何獲得循環中生成的char值的總和?
示例: ABCD = 10(因爲1 + 2 + 3 + 4)
但我不知道如何添加字符串中的所有值
注:這是隻爲大寫字母和字符串
public class Test {
public static void main(String[] args) {
Scanner scannerTest = new Scanner(System.in);
System.out.println("Enter a name here: ");
String str = scannerTest.nextLine();
char[] ch = str.toCharArray();
int temp_integer = 64;
for (char c : ch) {
int temp = (int) c;
if (temp <= 90 & temp >= 65){
int sum = (temp - temp_integer);
System.out.println(sum);
}
}
}
}
所以,你可以看到我打印出來的金額,每次的環形,爲含義:如果我輸入「AB」,輸出將是1和2.
但是,我想更進一步,並將這兩個值加在一起,但我很難過,有什麼建議或幫助? (注:這不是轉讓或什麼,只是在練習習題集)
您意識到這行:'if(temp <= 90&temp> = 65);'代碼沒有用處嗎?一個'if'語句必須至少有一行後面沒有括號,沒有它只是一個代碼,沒有任何區別。 –
既然你已經能夠得到每個大寫字母的整數值,爲什麼不把它們加在for循環中以獲得總和呢? – Bon
@JorgeCampos Java是建立在ASCII字符之上的,所以在ASCII碼中65代表「A」,90代表「Z」,我需要它到這個參數,否則當它/如果他們輸入小寫字母時我會得到錯誤的值 – Theo