Java加密作业

 

  1. String.equals()方法

Public boolean equals(Object obj){

   Return (this==obj);

}

若当前对象和比较的对象是同一个对象,即return true。也就是Object中的equals方法。

    若当前传入的对象是String类型,则比较两个字符串的长度,即value.length的长度。若长度不相同,则return false若长度相同,则按照数组value中的每一位进行比较,不同,则返回false。若每一位都相同,则返回true。若当前传入的对象不是String类型,则直接返回false

  1. Length():返回当前字符串的长度。

charAt():取字符串的某一个字符,char charAt(int index)index是字符串中的序数,从0到length()-1。
getChars(():将当前字符串从start到end-1位置上的字符复制到字符数组c中,并从c的offset处开始存放
replace():String replace(char oldChar,char newChar),将字符串第一个oldChar替换成newChar。
toUpperCase()):将所有英文字符转换大写字母。

toLowerCase():将所有英文字符转换成小写字母。
trim():
返回一个复制该字符串的开头和结尾的白色空格去掉
toCharArray():
将该String对象转换成char数组

3.

    设计思想:先判断字符是否在区间里,加密时+3,解密时-3,输出字符串。

    流程

 

 

源代码:

package 字符加密;
//信1605-1 20163430 王铭宇
import java.util.Scanner;
public class Zuoye {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.println("请选择 1.加密  2.解密");
        int m=input.nextInt();
        if(m==1){
        System.out.println("请输入要加密的字串:");
        String str="";
        String str1="";
        int n=0;
        input.nextLine();
        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);
    }
    
    if(m==2){
        System.out.println("输入要解密的字符:");
        String num="";
        String num1="";
        int  b=0;
        input.nextLine();
        num=input.nextLine();
        b=num.length();
        char temp=0;
        for(int i=0;i<b;i++)
        {
            if((num.charAt(i)>64&&num.charAt(i)<88)||(num.charAt(i)>96&&num.charAt(i)<120))
                temp=(char)(num.charAt(i)-3);
            else if((num.charAt(i)>87&&num.charAt(i)<91||(num.charAt(i)<123&&num.charAt(i)>119)))
                    temp=(char)(num.charAt(i)-29);
                num1+=temp;
                
        }
        System.out.println("解密后的字串是:\n"+num1);
    }
}
}

    

 

截图

 

posted @ 2017-10-25 15:05  格式化。  阅读(131)  评论(0编辑  收藏  举报