Java四位电话号码的加密方法
作者:blue_hh 发布时间:2022-08-20 16:04:29
标签:Java,电话号码,加密
某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上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);
运行结果如下:


猜你喜欢
- 背景SpringBoot 版本<parent> <groupId>org.springfr
- 本文实例讲述了WinForm实现仿视频播放器左下角滚动新闻效果的方法。分享给大家供大家参考。具体实现方法如下:using System;us
- 一、模拟业务需求假设我们现在需要在我们的系统中导入一批关于学生信息的Excel的数据,其主要的信息有:学号、姓名、年龄、性别等等,在导入系统
- 学习hibernate的时候,小编已经接触多各种映射,mybatis中映射有到底是如何运转的,今天这篇博文,小编主要来简单的介绍一下myba
- 现如今的APP各式各样,同样也带来了各种需求,一个下拉刷新都能玩出花样了,前两天订饭的时候不经意间看到了“百度外卖”的下拉刷新,今天的主题就
- 在一些特定的 App 里,我们不希望手机横屏的时候,App 发生旋转,比如微信,企业微信都是这样的。代码可以这样设定:import '
- 前言:在Java面试中,线程的状态也是被经常考察的知识点,今天我们就来聊一聊线程状态的那些事!线程在JVM中的状态查看线程在JVM中有哪些不
- 本文实例讲述了Java Socket实现单线程通信的方法。分享给大家供大家参考,具体如下:现在做Java直接使用Socket的情况是越来越少
- 实现多表联合查询还是在david.mybatis.model包下面新建一个Website类,用来持久化数据之用,重写下相应toString(
- Eclipse查看开发包jar里源代码的方法前言:最近我打算学习一下谷歌的类库Guava,下载了Guava-r09.jar包及其源码,为了可
- 时间轮关于时间轮的介绍,网上有很多,这里就不重复了核心思想一个环形数组存储时间轮的所有槽(看你的手表),每个槽对应当前时间轮的最小精度超过当
- 前言:在 Spring 中, IOC 是很重要的概念,其本质就是 map 结构,存储容器和业务 Be
- Android中操作Excel文件导出报表时主要采用开源库jxl,最早用在java上,但也可用于Android。与之类似的POI,因为依赖库
- 本文实例为大家分享了springboot+vue实现垃圾分类管理系统的具体代码,供大家参考,具体内容如下一、项目概述1.项目内容本项目利用I
- 上篇文章中介绍了聊天功能,这里介绍通讯录是如何实现的。首先要加载公司的所有部门,树形结构,然后点击进入部门的人员列表,点击人员能查看详细信息
- C#中Description特性主要用于枚举和属性,方法比较简单,记录一下以便后期使用。扩展类DescriptionExtension代码如
- 一、对象的创建1.1 new 类名虚拟机遇到一条new指令时,首先检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并检查这个符号引
- 在我们将Winform自带的边框隐藏之后,我们需要自己编写窗口的移动。思路就是1.获得点击左键时当前鼠标的坐标2.获得移动后鼠标的坐标3.窗
- using System;using System.Collections.Generic;using System.Text;using
- Java 中java.io.IOException: Broken pipe认识broken pipepipe是管道的意思,管道里面是数据流