一、字串加密
古羅馬皇帝凱撒在打仗時曾經使用過以下方法加密軍事情報:
請編寫一個程序,使用上述算法加密或解密用戶輸入的英文字串要求設計思想、程序流程圖、源代碼、結果截圖。
1、程序設計思想
先定義字符串,之后輸入字符串,算出字符串的長度,用for循環進行字符串的加密,運用ASCLL碼表,進行加密,如果是xyz就減23,XYZ同理,其余的就正常加3,最后將加密的字符加到一個空的String類型的成員上,最后輸出結果。
2、程序流程圖
3、源代碼
import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.println("請輸入要加密的字串:"); String str=""; String str1=""; int n=0; str=input.nextLine(); n=str.length(); char temp = 0; for(int i=0;i<n;i++) { if((str.charAt(i) > 64 && str.charAt(i) < 88)||(str.charAt(i) > 96 && str.charAt(i) < 120)) temp=(char) (str.charAt(i) + 3); else if((str.charAt(i) > 87 && str.charAt(i) < 91)||(str.charAt(i) > 119 && str.charAt(i) < 123)) temp=(char) (str.charAt(i) - 23); str1+=temp; } System.out.println("加密后的字串是:\n"+str1); } }
4、結果截圖
二、String的各類函數說明
1、String.equals():用來檢測兩個String類型的對象是否相等,不能簡單用“==”來判斷兩個字符串相等。
2、Length():可以求出一個字符串的長度。
3、charAt():用於返回指定索引處的char值。
4、getChars():將字符從此字符串復制到目標字符數組。
5、replace():用於在字符串中用一些字符替換另一些字符。
6、toUpperCase():把字符串轉換成大寫。
7、toLowerCase():把字符串轉換成小寫。
8、trim():獲得對象的字段的值,然后轉成string類型,並且去掉前后空白。
9、toCharArray():將一個字符串內容轉換為字符數組。