字串加密
1.設計思想:
(1)加密方法,字元串的每一個字元都代表這個字元往後的第三位,最後三個字元代表,開始的三個字元。
(2)解密方法,字元串的每一個字元都代表這個字元往前的第三位,開始三個字元代表,最後的三個字元。
(3)判斷輸入的是要加密還是解密,調用不同的方法。
2.程式流程圖
3.源代碼
package text;
import java.util.Scanner;
public class MiMa {
public static void main(String[] args) {
MiMa m=new MiMa();
Scanner input=new Scanner(System.in);
String s=input.next();//輸入字元串
System.out.print("1.解密,2.加密");
int i=input.nextInt();
if(i==1)
{
m.Jiemi(s);
}
else
m.Jiami(s);
}
public void Jiami(String s){
char c = 0;
for(int i=0;i<s.length();i++)
{
if(s.charAt(i)=='x')
System.out.print("a");
else
if(s.charAt(i)=='y')
System.out.print("b");
else
if(s.charAt(i)=='z')
System.out.print("c");
else
c=(char) (s.charAt(i)+3);
System.out.print(c);
}
public void Jiemi(String s){
if(s.charAt(i)=='a')
System.out.print("x");
if(s.charAt(i)=='b')
System.out.print("y");
if(s.charAt(i)=='c')
System.out.print("z");
c=(char) (s.charAt(i)-3);
}
4.結果截圖
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuMzN0MmMwEGNzQDO1YDOjJGN0Q2N5AjZ2YzNiJjM3IGZfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
Java動手動腦
String.equals()方法的實作代碼
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = value.length;
if (n == anotherString.value.length) {
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n-- != 0) {
if (v1[i] != v2[i])
return false;
i++;
}
return true;
}
return false;
}
Length():擷取字串長度,字元串是一個對象,在這個對象中包含length屬性,它是該字元串的長度,使用String類中的length()方法可以擷取該屬性值。
charAt():擷取指定位置的字元
getChars():擷取從指定位置起的子串複制到字元數組中(它有四個參數,1.被拷貝字元在字串中的起始位置 2.被拷貝的最後一個字元在字串中的下标再加1 3.目标字元數組 4.拷貝的字元放在字元數組中的起始下标)
replace():子串替換,通過String類的replace()方法,可以将原字元串中的某個字元替換為指定的字元,并得到一個新的字元串,該方法的具體定義如下:public String replace(char oldChar,char newChar)
toUpperCase()、 toLowerCase():大小寫轉換,在String類中提供了兩個用來實作字母大小寫轉換的方法,它們的傳回值均為轉換後的字元串,其中toLowerCase()用來将字元串中的所有大寫字母改為小寫字母,,方法toUpperCase()用來将字元串中的所有小寫字母改為大寫字母。
trim():去除頭尾空格,通過String類的trim()方法,可以通過去掉字元串的首尾空格得到一個新的字元串,該方法的具體定義如下:public String trim()
toCharArray():将字元串對象轉換為字元數組