本帖最后由 陈圳 于 2013-3-21 08:19 编辑
- public static int[] getNums(int number){
- int length =(new Integer(number)).toString().length();//获取字值的长度,这样可以实现任何位数的加密,而不局限4位
- int[] arr=new int[length];
- for(int i=length-1;i>=0;i--){
- arr[i]=number%10;
- arr[i]+=5;//规则一每位都+5
- System.out.println("arr["+i+"]====="+arr[i]);//测试语句
- arr[i]=(int)arr[i]/10;//规则二用/10余数代替本身.//你的题意有问题,小于10的数除10就没有整数了.而且也无法还原了...
- number/=10;
- System.out.println("arr["+i+"]="+arr[i]);//测试语句
- }
- for(int i=0;i<length;i++){//开始交换,按照题意做的,暂时想不到在一个循环里解决的办法.开始这个循环是为了实现任何位数
- for(int j=length-1;j>=0;j--){
- if(i+j==(length-1)){
- i=i+j;//应该封装成一个方法...
- j=i-j;
- i=i-j;
- }
- }
- }
- return arr;
- }
复制代码 |