日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Java异或校验_异或校验计算器(java注释@)

發(fā)布時間:2023/12/19 综合教程 20 生活家
生活随笔 收集整理的這篇文章主要介紹了 Java异或校验_异或校验计算器(java注释@) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Java異或校驗

今天要用到異或校驗,折騰了半天,寫下來留作備用。
功能是將一串16進制的數(shù)進行異或校驗,輸出校驗和。
代碼:

import java.util.Scanner;

/* * 亦或校驗算法 */
public class Checksum_XOR { 
   

    @SuppressWarnings("resource")
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        while(true){
            int i = 0,j = 0;
            Scanner scanner = new Scanner(System.in);
            String in = scanner.nextLine();
            int len = in.length();
            short inb[] = new short[len];
            for(i=0;i<len;i++){
                inb[i] = charToHex(in.charAt(i));   //將String里的每一個char轉(zhuǎn)換為Hex
            }

            for(i =0;i<len;i++){    //將每兩個Hex合并成一個byte
                inb[j] = (byte) (((inb[i]<<4)&0x00f0)|((inb[i+1])&0x000f));
                i++;
                j++;
            }
            byte temp = 0x00; //校驗值
            for(i = 0;i<len/2;i++){ //異或
                temp ^= inb[i];
            }
            System.out.printf("%x", temp);
        }
    }

    static short charToHex(char x){ //將單個char轉(zhuǎn)換為Hex
        short result = 0;
        switch(x){
        case 'a':result=10;break;
        case 'b':result=11;break;
        case 'c':result=12;break;
        case 'd':result=13;break;
        case 'e':result=14;break;
        case 'f':result=15;break;

        case 'A':result=10;break;
        case 'B':result=11;break;
        case 'C':result=12;break;
        case 'D':result=13;break;
        case 'E':result=14;break;
        case 'F':result=15;break;
        default:result = (short) Character.getNumericValue(x);break;
        }
        return result;
    }
}

總結(jié)

以上是生活随笔為你收集整理的Java异或校验_异或校验计算器(java注释@)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。