JAVA纯数字加密成字符串(可解密)

在Java编程中,有时需要对纯数字进行加密,以保护数据的机密性。本文将介绍一种简单的加密方法,可以将纯数字加密成字符串,并且可以在需要时解密回原来的数字。

首先,我们需要定义一个加密函数,该函数将接收一个整数作为输入,并将其转换为字符串。我们可以使用一个简单的算法来实现这一点,例如将每个数字分别转换为字符,然后连接起来。

java

public static String encrypt(int number) {

StringBuilder sb = new StringBuilder();

while (number > 0) {

sb.insert(0, number % 10);

number /= 10;

}

return sb.toString();

}

这个函数首先创建一个空的StringBuilder,然后使用一个循环来遍历每个数字。在循环中,我们将当前数字插入到StringBuilder的开头,这样就可以保持数字的顺序。最后,我们将StringBuilder的内容转换为字符串并返回。

现在我们有了加密函数,我们可以使用它来加密任何整数。例如,如果我们想要加密数字12345,我们可以这样做:

java

String encrypted = encrypt(12345);

这将产生字符串"54321",这是12345的加密版本。

为了能够解密这个字符串,我们需要一个解密函数。这个函数的工作原理与加密函数相反,它将字符串中的字符一个接一个地转换回数字,然后组合起来。

java

public static int decrypt(String encrypted) {

int number = 0;

for (int i = 0; i < encrypted.length(); i++) {

number = number * 10 + (int) encrypted.charAt(i) - 48;

}

return number;

}

在这个函数中,我们首先设置一个变量number为0。然后,我们使用一个循环来遍历字符串中的每个字符。在循环中,我们将当前字符转换为数字(使用字符'0'的ASCII码作为偏移量),并将它加到number上。最后,我们将number返回,这就是解密后的数字。

现在我们可以使用解密函数

更多文章请关注《万象专栏》