Java對(duì)字符串進(jìn)行加密解密
要求:
* 對(duì)用戶(hù)輸入的每個(gè)字符的值進(jìn)行加密,將解密后的字符串輸出
* 對(duì)用戶(hù)輸入的已加密字符串進(jìn)行解密并輸出
實(shí)現(xiàn)代碼:
import java.util.Scanner; /** * 要求: * 1.對(duì)用戶(hù)輸入的每個(gè)字符的值進(jìn)行加密,將解密后的字符串輸出 * 2.對(duì)用戶(hù)輸入的已加密字符串進(jìn)行解密并輸出 * @author Administration * */ public class Encryption { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("請(qǐng)輸入一個(gè)英文字符串或揭秘字符串"); //獲取用戶(hù)輸入 String password = input.nextLine(); //講獲取的字符串轉(zhuǎn)成字符數(shù)組 char[] c = password.toCharArray(); //使用for循環(huán)給字符數(shù)組加密 for(int i=0;i<c.length;i++){ c[i] = (char)(c[i]^20000); } //輸出加密或者解密結(jié)果 System.out.println("加密或者解密之后的結(jié)果如下:"); System.out.println(new String(c)); } }
運(yùn)行結(jié)果:
*加密過(guò)程:
請(qǐng)輸入一個(gè)英文字符串或揭秘字符串:
I Love You
加密或者解密之后的結(jié)果如下:
乩一乬乏乖久一乹乏乕
*解密過(guò)程:
請(qǐng)輸入一個(gè)英文字符串或揭秘字符串:
乩一乬乏乖久一乹乏乕
加密或者解密之后的結(jié)果如下:
I Love You
原理解析:
本例的關(guān)鍵技術(shù)是異或運(yùn)算。
原理:如果一個(gè)字符(或數(shù)值)A與一個(gè)數(shù)值B進(jìn)行異或運(yùn)算得到C,則再用C和B進(jìn)行以后運(yùn)算就可以還原得到A。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot + FreeMarker 實(shí)現(xiàn)動(dòng)態(tài)Word文檔導(dǎo)出功能
Spring Boot與FreeMarker的組合,為開(kāi)發(fā)者提供了一個(gè)強(qiáng)大的平臺(tái),可以輕松實(shí)現(xiàn)動(dòng)態(tài)Word文檔的導(dǎo)出,本文將指導(dǎo)你如何使用Spring Boot與FreeMarker模板引擎,創(chuàng)建一個(gè)簡(jiǎn)單的應(yīng)用,用于根據(jù)數(shù)據(jù)庫(kù)數(shù)據(jù)動(dòng)態(tài)生成Word文檔并下載,感興趣的朋友一起看看吧2024-06-06Java中前臺(tái)往后臺(tái)傳遞多個(gè)id參數(shù)的實(shí)例
下面小編就為大家?guī)?lái)一篇Java中前臺(tái)往后臺(tái)傳遞多個(gè)id參數(shù)的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07詳解如何在Spring Boot項(xiàng)目使用參數(shù)校驗(yàn)
本篇文章主要介紹了如何在Spring Boot項(xiàng)目使用參數(shù)校驗(yàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06MybatisPlus搭建項(xiàng)目環(huán)境及分頁(yè)插件
Mybatis-Plus(簡(jiǎn)稱(chēng)MP)是一個(gè)Mybatis的增強(qiáng)工具,在Mybatis的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生,下面這篇文章主要給大家介紹了關(guān)于MybatisPlus搭建項(xiàng)目環(huán)境及分頁(yè)插件的相關(guān)資料,需要的朋友可以參考下2022-11-11Spring Boot中使用AOP統(tǒng)一處理web層異常的方法
這篇文章主要介紹了Spring Boot中使用AOP統(tǒng)一處理web層異常的相關(guān)資料,需要的朋友可以參考下2018-03-03