将int转int数组并将int数组元素处理后转int,实现加密

package faceobject;

import java.util.Arrays;

public class Test {
    /**
     加密问题
         数据是小于8位的整数
         先将数据倒序,然后将每位数字都加上5,再用除以10的余数代替该数据
         然后将第一个和最后一个调换位置
     */
    public static void main(String[] args){
        int x=123456;
        jiami1(x);
        System.out.println();
        jiami2(x);
        
    }
    public static void  iteratorArr(int[] arr){
        for(int a:arr){
            System.out.print(a);
            }
    }
    
    public static void jiami1(int x){
        /**
         将int转化成String,将String转化成char数组,将char数组中的每一个值转化成String再转成int再赋给新数组。
         */
        String s=String.valueOf(x);
        char[] c=s.toCharArray();
        int[] arr=new int[c.length];
        for(int i=0;i<arr.length;i++){
            arr[i]=Integer.parseInt(String.valueOf(c[c.length-1-i]));;
        }
        for(int st:arr){
            System.out.print(st);
        }
        int count=0;
        for(int i=0;i<arr.length;i++){
            arr[i]=(arr[i]+5)%10;
            count+=arr[i]*Math.pow(10, arr.length-1-i);
        }
        //iteratorArr(arr);
        System.out.println();
        int temp=arr[0];
        arr[0]=arr[arr.length-1];
        arr[arr.length-1]=temp;
        iteratorArr(arr);
    }
    
    public static void jiami2(int x){
        int[] arr=new int[8];
        int index=0;
        while(x>0){
                arr[index]=x%10;
                x=x/10;
                index++;
        }
        for(int i=0;i<index;i++){
            arr[i]=(arr[i]+5)%10;
            if(i==index-1){
                int temp=arr[i];
                arr[i]=arr[0];
                arr[0]=temp;
            }
        }
        for(int i=0;i<index;i++){
            System.out.print(arr[i]);
        }
        
    }
        
}
原文地址:https://www.cnblogs.com/aigeileshei/p/5526684.html