介紹:
有一個全部爲大寫的字符串,現在給其設置一個規定,每個字符轉換成它後面的的第五個字符。
例如A->F Z->E
思考:
1.對該字符進行遍歷,根據字母的ASCII碼來進行判斷
2.A的ASCII碼爲65,Z的ASCII碼爲91
3.對於前21個字母直接+5就可以
public class 凱撒密碼 {
public static void main(String[] args) {
getResult("ABCDYZ");
}
private static void getResult(String str) {
char[] arr = str.toCharArray();
for(int i=0;i<arr.length;i++){
int c = arr[i];
if(c>=65&&c<85){
arr[i] = (char) (c + 5);
}else if(c<91&&c>85){
arr[i] = (char) (c - 21);
}
}
String newstr = new String(arr);
System.out.println(newstr);
}
}
總結:
其實這個題目很簡單,但是有時候並不會想到用ASCII碼來計算,所以個人覺得大學學的一些課程挺有用的,比如計算機組成原理,計算機網絡,操作系統,數據結構等。當時學的時候覺得沒什麼實際的用處,其實在真正的應用中是處處都有他們的蹤跡。基礎還是得打牢。