1. 程式人生 > >Java小案例——對字符串進行加密解密

Java小案例——對字符串進行加密解密

i++ 個數 color class 異或運算 揭秘 println scanner 英文

要求:
  * 對用戶輸入的每個字符的值進行加密,將解密後的字符串輸出
   * 對用戶輸入的已加密字符串進行解密並輸出


實現代碼:

import java.util.Scanner;
/**
 * 要求:
 *     1.對用戶輸入的每個字符的值進行加密,將解密後的字符串輸出
 *     2.對用戶輸入的已加密字符串進行解密並輸出
 * @author Administration
 *
 */
public class Encryption {

    public static void main(String[] args) {
        Scanner input = new
Scanner(System.in); System.out.println("請輸入一個英文字符串或揭秘字符串"); //獲取用戶輸入 String password = input.nextLine(); //講獲取的字符串轉成字符數組 char[] c = password.toCharArray(); //使用for循環給字符數組加密 for(int i=0;i<c.length;i++){ c[i] = (char)(c[i]^20000); }
//輸出加密或者解密結果 System.out.println("加密或者解密之後的結果如下:"); System.out.println(new String(c)); } }

運行結果:

*加密過程:

請輸入一個英文字符串或揭秘字符串:
I Love You
加密或者解密之後的結果如下:
乩一乬乏乖久一乹乏乕

*解密過程:

請輸入一個英文字符串或揭秘字符串:
乩一乬乏乖久一乹乏乕
加密或者解密之後的結果如下:
I Love You

原理解析:

本例的關鍵技術是異或運算。
原理:如果一個字符(或數值)A與一個數值B進行異或運算得到C,則再用C和B進行以後運算就可以還原得到A。

Java小案例——對字符串進行加密解密