zhugewuhou 2016-08-18 07:29 采纳率: 0%
浏览 2258

Java编写数字加密解密

/*
整数加密/解密算法

设置一套针对非负整数的加密,解密算法

例如: 一个简单的映射算法,0->a,1->b, 2->c, 3->d, 4->e,5->f, 6->g, 7->h, 8->i,9->j
encode(2756)->”chfg”
decode(“bcea”)->1240

加分项:实现示例之外的其他加密/解密算法

//number>=0
public String encode(int number);

public int decode(String numberStr);

*/

  • 写回答

2条回答 默认 最新

  • qq_23660243 2016-08-18 08:25
    关注

    import java.util.HashMap;
    import java.util.Map;

    /**

    • Created by mahuichao on 16/8/18.
      */
      public class Test {
      public static final int number = 2756;
      public static final String str = "bcea";

      public static void main(String[] args) {

      String enStr = encode(number);
      System.out.println("加密的结果为:" + enStr);
      int deNum = decode(str);
      System.out.println("解密后的结果为:" + deNum);
      

      }

      public static String encode(int number) {
      Map map = encode_rules();

      String strNum = String.valueOf(number);
      String result = "";
      char[] chNum = strNum.toCharArray();
      for (int i = 0; i < chNum.length; i++) {
          result += map.get(Integer.parseInt(chNum[i] + ""));
      }
      return result;
      

      }

      public static int decode(String number) {
      Map map = decode_rules();
      String result = "";
      char[] chNum = number.toCharArray();
      for (int i = 0; i < chNum.length; i++) {
      result += map.get(chNum[i] + "");
      }
      int finalResult = Integer.parseInt(result);
      return finalResult;
      }

      public static Map encode_rules() {
      Map map = new HashMap();
      map.put(0, "a");
      map.put(1, "b");
      map.put(2, "c");
      map.put(3, "d");
      map.put(4, "e");
      map.put(5, "f");
      map.put(6, "g");
      map.put(7, "h");
      map.put(8, "i");
      map.put(9, "j");

      return map;
      

      }

      public static Map decode_rules() {
      Map map = new HashMap();
      map.put("a", "0");
      map.put("b", "1");
      map.put("c", "2");
      map.put("d", "3");
      map.put("e", "4");
      map.put("f", "5");
      map.put("g", "6");
      map.put("h", "7");
      map.put("i", "8");
      map.put("j", "9");

      return map;
      

      }

    }

    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题