利用“^”異或運算對字元串進行加密
思路:1.先建立字元串輸入的Scanner;2.通過char[] array = password.toCharArray();// 擷取字元數組;3.周遊字元數組,按目前了解要用到周遊:數組所有元素進行通路,比如你要輸出數組裡所有的資訊時,就要用到 ;4.進行異或運算
詳細代碼貼出來:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<code>package</code> <code>com.lixiyu;</code>
<code>import</code> <code>java.util.Scanner;</code>
<code>public</code> <code>class</code> <code>Example {</code>
<code>public</code> <code>static</code> <code>void</code> <code>main(</code><code>String</code><code>[] args){</code>
<code> </code><code>Scanner sca=</code><code>new</code> <code>Scanner(System.</code><code>in</code><code>);</code>
<code> </code><code>System.out.println(</code><code>"請輸入一個英文字元串或解密字元串"</code><code>);</code>
<code> </code><code>String</code> <code>line=sca.nextLine();</code><code>//擷取使用者輸入資訊</code>
<code> </code><code>char[] array=line.toCharArray();</code><code>//擷取字元數組</code>
<code> </code><code>for</code> <code>(</code><code>int</code> <code>i=</code><code>0</code><code>;i<array.length;i++){</code><code>//曆遍字元數組</code>
<code> </code><code>array[i]=(char) (array[i]^</code><code>20000</code><code>);</code><code>//對數組每個元素進行異或運算</code>
<code> </code><code>}</code>
<code> </code><code>System.out.println(</code><code>"加密解密結果如下:"</code><code>);</code>
<code> </code><code>System.out.println(</code><code>new</code> <code>String</code><code>(array));</code><code>//輸出密鑰</code>
<code>}</code>
随便輸入一字元串運作結果:
<code>請輸入一個英文字元串或解密字元串</code>
<code>abcdefghijk</code>
<code>加密解密結果如下:</code>
<code>乁乂乃乄久乆乇麼義乊之</code>
反之把加密結果複制粘貼到輸入框,也可以解密:
加密原來可以這麼簡單!
本文轉自lixiyu 51CTO部落格,原文連結:http://blog.51cto.com/lixiyu/1302853,如需轉載請自行聯系原作者