基于Java解決華為機試之字符串加解密?
更新時間:2022年02月23日 08:46:22 作者:97的風
這篇文章主要介紹了基于Java解決華為機試之字符串加解密,問題描述展開主題即詳細代碼的分享完成文章內容,具有一的的參考價值,需要的小伙伴可以參考一下。希望對你有所幫助
1.簡述
描述:
- 1、對輸入的字符串進行加解密,并輸出。
- 2、加密方法為:
當內容是英文字母時則用該英文字母的后一個字母替換,同時字母變換大小寫,如字母a時則替換為B;字母Z時則替換為a;
當內容是數字時則把該數字加1,如0替換1,1替換2,9替換0;
其他字符不做變化。
- 3、解密方法為加密的逆過程。
本題含有多組樣例輸入。
數據范圍:輸入的兩個字符串長度滿足1 \le n \le 1000 \1≤n≤1000
,保證輸入的字符串都是大小寫字母或者數字
輸入描述:
輸入說明
- 輸入一串要加密的密碼
- 輸入一串加過密的密碼
輸出描述:
輸出說明
- 輸出加密后的字符
- 輸出解密后的字符
2.示例1
輸入:
abcdefg BCDEFGH
輸出:
BCDEFGH
abcdefg
2.代碼實現
import java.util.Scanner; public class Main{ ? ? public static void main(String[] args){ ? ? ? ? Scanner in = new Scanner(System.in); ? ? ? ? while(in.hasNext()){ ? ? ? ? ? ? System.out.println(encode(in.nextLine())); ? ? ? ? ? ? System.out.println(decode(in.nextLine())); ? ? ? ? } ? ? } ? ? //加密函數 ? ? private static String encode(String code){ ? ? ? ? char[] t = code.toCharArray(); ? ?//將String對象轉換為字符數組 ? ? ? ? for(int i=0; i < t.length; i++){ ? ? ? ? ? ? if(t[i]>='a' && t[i]<'z') ? ? ? ? ? ? ? ? t[i] = (char)(t[i] - 'a' + 'A' + 1); ? ? ? ? ? ? else if(t[i] == 'z') ? ? ? ? ? ? ? ? t[i] = 'A'; ? ? ? ? ? ? else if(t[i]>='A' && t[i]<'Z') ? ? ? ? ? ? ? ? t[i] = (char)(t[i] - 'A' + 'a' + 1); ? ? ? ? ? ? else if(t[i] == 'Z') ? ? ? ? ? ? ? ? t[i] = 'a'; ? ? ? ? ? ? else if(t[i]>='0' && t[i]<'9') ? ? ? ? ? ? ? ? t[i] = (char)(t[i]+1); ? ? ? ? ? ? else if(t[i] == '9') ? ? ? ? ? ? ? ? t[i] = '0'; ? ? ? ? } ? ? ? ? return String.valueOf(t); ? ? } ? ? //解密函數 ? ? private static String decode(String password){ ? ? ? ? char[] t = password.toCharArray(); ? ? ? ? for(int i=0; i < t.length; i++){ ? ? ? ? ? ? if(t[i]>'a' && t[i]<='z') ? ? ? ? ? ? ? ? t[i] = (char)(t[i] - 'a' + 'A' - 1); ? ? ? ? ? ? else if(t[i] == 'a') ? ? ? ? ? ? ? ? t[i] = 'Z'; ? ? ? ? ? ? else if(t[i]>'A' && t[i]<='Z') ? ? ? ? ? ? ? ? t[i] = (char)(t[i] - 'A' + 'a' - 1); ? ? ? ? ? ? else if(t[i] == 'A') ? ? ? ? ? ? ? ? t[i] = 'z'; ? ? ? ? ? ? else if(t[i]>'0' && t[i]<='9') ? ? ? ? ? ? ? ? t[i] = (char)(t[i]-1); ? ? ? ? ? ? else if(t[i] == '0') ? ? ? ? ? ? ? ? t[i] = '9'; ? ? ? ? } ? ? ? ? return String.valueOf(t); ? ? } }
到此這篇關于基于Java解決華為機試之字符串加解密 的文章就介紹到這了,更多相關Java字符串加解密 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!