Java四位电话号码的加密方法
作者:blue_hh 时间:2022-08-20 16:04:29
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。输入四位号码,求加密后的号码为多少?
代码如下:
int number;//定义输入的号码
int encryptionNumber; //定义加密后的号码
int num1,num2,num3,num4;//定义这四位号码的四个位置(从左到右排列)
@SuppressWarnings("resource")
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个四位数(1000~9999):");
number = sc.nextInt();
//拆分
num1 = number/1000;
num2 = (number%1000)/100;
num3 = (number/10)%10;
num4 = (number%100)%10;
//System.out.println("千:"+num1+"百:"+num2+"十:"+num3+"个:"+num4);
//加上5,然后除以10的余数代替该数字
num1 = (num1+5)%10;
num2 = (num2+5)%10;
num3 = (num3+5)%10;
num4 = (num4+5)%10;
//这部可以写成
//encryptionNumber = num4*1000+num3*100+num2*10+num1;
//第一位和第四位交换
num1 = num1 + num4;
num4 = num1 - num4;
num1 = num1 - num4;
//第二位和第三位交换
num2 = num2 + num3;
num3 = num2 - num3;
num2 = num2 - num3;
//加密完成后的号码
encryptionNumber = num1*1000+num2*100+num3*10+num4;
System.out.println("输入的号码为:"+number);
System.out.println("加密后的号码为:"+encryptionNumber);
运行结果如下:
标签:Java,电话号码,加密
0
投稿
猜你喜欢
Mybatis步骤分解实现一个增删改查程序
2021-09-16 01:12:43
基于spring 方法级缓存的多种实现
2022-12-14 18:31:38
Spring JPA 错题集解决案例
2022-03-26 22:44:03
eclipse maven 插件的安装和配置详解
2023-08-24 16:57:01
JVM 运行时数据区与JMM 内存模型
2022-08-12 10:49:27
C#使用Dispose模式实现手动对资源的释放
2022-09-21 16:12:14
三道java新手入门面试题,通往自由的道路--多线程
2023-05-24 23:12:51
asp.net之生成验证码的方法集锦(一)
2022-09-07 22:37:13
SpringBoot自动配置原理详解
2023-08-19 09:25:55
Java JDBC导致的反序列化攻击原理解析
2023-09-24 15:38:42
如何动态替换Spring容器中的Bean
2023-05-22 20:18:59
android 获取上一个activity返回值的方法
2023-06-15 13:22:22
Java8 CompletableFuture runAsync学习总结submit() execute()等
2023-05-25 04:13:43
用java WebSocket做一个聊天室
2021-11-30 00:39:55
SpringMVC Restful风格与中文乱码问题解决方案介绍
2021-06-12 03:15:16
Java通过HttpClient进行HTTP请求的代码详解
2022-06-04 09:50:20
关于使用Mybatisplus自带的selectById和insert方法时的一些问题
2023-11-01 14:15:42
使用java代码获取新浪微博应用的access token代码实例
2023-12-01 20:18:30
分享Java常用几种加密算法(四种)
2022-05-14 17:59:19
Unity实现游戏卡牌滚动效果
2023-09-20 10:54:23