A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 人在旅途~东营 中级黑马   /  2015-5-31 23:02  /  150 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

学习了一个加密的案例:  键盘录入一个数字(数据是小于8位的整数),并进行加密
       加密规则如下:
                首先将数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
                最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数,
                然后,把加密后的结果在控制台打印出来。
  1. import java.util.Scanner;
  2. public class Test14 {

  3.         public static void main(String[] args) {
  4.                 // 键盘录入数据
  5.                 Scanner sc = new Scanner(System.in);
  6.                 // 提示:
  7.                 System.out.println("请输入一个1-8位的数字:");
  8.                 int number = sc.nextInt();
  9.                 String result = fun(number);
  10.                 System.out.println("加密后的数据是:" + result);
  11.         }

  12.         private static String fun(int number) {
  13.                 // 将数字存储到数组中
  14.                 int index = 0;
  15.                 int[] arr = new int[8];
  16.                 while (number > 0) {
  17.                        
  18.                                 arr[index] = number % 10;
  19.                                 index++;
  20.                                 number /= 10;
  21.                        
  22.                 }
  23.                 // 将每位数字加5,再用和除以10的余数代替该数字,
  24.                 for (int i = 0; i < index; i++) {
  25.                         arr[i] += 5;
  26.                         arr[i] %= 10;
  27.                 }
  28.                 // 最后将第一位和最后一位数字交换。
  29.                 int temp = arr[0];
  30.                 arr[0] = arr[index - 1];
  31.                 arr[index - 1] = temp;

  32.                 // 做一个字符串的拼接
  33.                 String s = "";
  34.                 for (int i = 0; i < index; i++) {
  35.                         s += arr[i];

  36.                 }
  37.                 return s;

  38.         }

  39. }
复制代码

1 个回复

倒序浏览
学习的好扎实啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马