小编给大家分享一下Java如何实现简单密码加密功能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
具体内容如下
需求:
首先将一组数据倒序,然后将每位数字都加上5,再用和除以10的余数代替该数字,
最后将第一位和最后一位数字交换。 请任意给定一个小于8位的整数,
然后,把加密后的结果在控制台打印出来。
分析:
1.数据小于8位数
2.数据倒序
3.每位数字都加上5,再用和除以10的余数代替该数字
4.最后将第一位和最后一位数字交换
5.打印输出
代码实现:
public class Encrypt{
public static void main(String[] args){
//定义小于8位的数据
int number = 123456;
//定义一个数组,,小于8位
int[] arr = new int[8];
//将定义的数据,进行倒序
int index = 0;
while(number > 0){
//数据求余运算,将余数存储进数组中,第一次运算得到6
arr[index] = number%10;
index++;
//数据除10
number /= 10;
}
//每位数字都加上5,再用和除以10的余数代替该数字
for(int x = 0;x<index;x++){
arr[x] += 5;
arr[x] %= 10;
}
//最后将第一位和最后一位数字交换
int temp = arr[0];
arr[0] = arr[index-1];
arr[index-1] = temp;
//输出数据
for(int x = 0;x<index;x++){
System.out.println(arr[x]);
}
}
}
运行结果:
可进行优化:
通过键盘输入数据(小于八位)
通过调用方法的方式
import java.util.Scanner;
public class Encrypt {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入密码(小于八位):");
int number2 = sc.nextInt();
String result = Encrypt(number2);
System.out.println("加密后的密码:"+result);
}
//字符串类型
public static String Encrypt(int number2){
int []arr = new int[8];
int index = 0;
while (number2 > 0) {
arr[index] = number2 % 10;
index++;
number2 /= 10;
}
for (int x = 0; x < index; x++) {
arr[x] += 5;
arr[x] %= 10;
}
int temp = arr[0];
arr[0] = arr[index - 1];
arr[index - 1] = temp;
//把数组元素拼接成字符串返回
//定义一个空字符串
String s = "";
for (int x = 0;x<index;x++){
s += arr[x];
}
return s;
}
}
运行结果:
以上是“Java如何实现简单密码加密功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。