需求: 1、某系统的数字密码(大于0),比如1983,采用加密方式进行传输。
2、规则如下: 先得到每位数,然后每位数都加上5 最后将所有数字反转,得到一串新数。
import java.util.*;
public class Main {
public static void main(String[] args) {
int[] arr = {1, 9, 8, 3};
// 1.加密,原数字+5,%10后的数字:
// 6 4 3 8
for (int i = 0; i < arr.length; i++) {
arr[i] = (arr[i] + 5) % 10;
}
//2.反转后的数字:
// 8 3 4 6
// 单指针:
for (int i = 0; i < arr.length / 2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
// 双指针:
/* for (int i = 0, j = arr.length - 1; i < j; i++, j--)
{
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}*/
// 3.拼接数组里的数
// 8346
int number = 0;
for (int i = 0; i < arr.length; i++) {
number = number * 10 + arr[i];
}
System.out.println(number);
}
}