国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java使用異或?qū)崿F(xiàn)變量互換和異或加密解密示例

2019-11-26 15:42:59
字體:
供稿:網(wǎng)友

復(fù)制代碼 代碼如下:

import java.util.Scanner;

public class VariableExchange {
    public static void main(String[] args){
        System.out.println("請輸入變量A的值");
        Scanner scanner=new Scanner(System.in);
        long A=scanner.nextLong();
        System.out.println("請輸入變量B的值");
        Scanner scannerB=new Scanner(System.in);
        long B=scannerB.nextLong();
        System.out.println("A="+A+"/t"+"B="+B);
        System.out.println("執(zhí)行變量互換...");
        A=A^B;
        B=B^A;
        A=A^B;
        System.out.println("A="+A+"/t"+"B="+B);
    }
}

其實現(xiàn)是巧用了異或運算。

其原理:

復(fù)制代碼 代碼如下:

a = a ^ b;
b = b ^ a;
a = a ^ b;

復(fù)制代碼 代碼如下:

a1=a^b
b=a1^b=(a^b)^b=a
a=a1^b =a1^(a1^b)=a1^a1^b=b

同一變量與另一變量和其異或值異或等于自身。

該原理同樣可運用于加密。將其值與key進行異或得到加密后的串,解密操作也只需與key再異或一次。

補充:
Scanner類:
一個可以使用正則表達式來解析基本類型和字符串的簡單文本掃描器。
例1:

復(fù)制代碼 代碼如下:

Scanner sc = new Scanner(System.in);
int i = sc.nextInt();

例2:

復(fù)制代碼 代碼如下:

Scanner sc = new Scanner(new File("myNumbers"));
 while (sc.hasNextLong()) {
       long aLong = sc.nextLong();
}

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 互助| 潜江市| 铁力市| 连江县| 固始县| 昭苏县| 玛沁县| 青浦区| 无锡市| 错那县| 怀集县| 保定市| 昔阳县| 大同市| 安国市| 大丰市| 恭城| 仲巴县| 淅川县| 木里| 曲周县| 铜鼓县| 峨眉山市| 乌拉特中旗| 徐州市| 凉城县| 文登市| 石门县| 博兴县| 开鲁县| 大新县| 开封市| 镶黄旗| 中江县| 万盛区| 邹城市| 桐城市| 灵台县| 阜南县| 青海省| 平凉市|