介绍:
有一个全部为大写的字符串,现在给其设置一个规定,每个字符转换成它后面的的第五个字符。
例如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码来计算,所以个人觉得大学学的一些课程挺有用的,比如计算机组成原理,计算机网络,操作系统,数据结构等。当时学的时候觉得没什么实际的用处,其实在真正的应用中是处处都有他们的踪迹。基础还是得打牢。