- 数字加密。请写一个函数,实现输入一个任意位正整数,将其加密后输出。加密规则如下:
- 对输入整数的每一位分别加上5,然后分别将其替换为该值除以10取余后的结果
- 将该正整数的第1位和第4位互换,第2位和第3位互换
- 将步骤2的换位结果作为加密后的整数输出
例如: 输入:1000,输出:5556
int a = 100000;
String str = String.valueOf(a);
String[] strArray = str.split("");
Integer[] intArray = new Integer[strArray.length];
for(int i = 0; i < strArray.length ; i++){
intArray[i] = (Integer.valueOf(strArray[i]) + 5) % 10;
}
StringBuilder newStr = new StringBuilder();
for (int i = 0; i < intArray.length / 2; i++) {
if(intArray.length - 1 - i == i){
break;
}
intArray[i] = intArray[i] + intArray[intArray.length - 1 - i];
intArray[intArray.length - 1 - i] = intArray[i] - intArray[intArray.length - 1 - i];
intArray[i] = intArray[i] - intArray[intArray.length - 1 - i];
}
for(int i : intArray){
newStr.append(i);
}
System.out.println(newStr.toString());