Java加密作业
- String.equals()方法
Public boolean equals(Object obj){
Return (this==obj);
}
若当前对象和比较的对象是同一个对象,即return true。也就是Object中的equals方法。
若当前传入的对象是String类型,则比较两个字符串的长度,即value.length的长度。若长度不相同,则return false若长度相同,则按照数组value中的每一位进行比较,不同,则返回false。若每一位都相同,则返回true。若当前传入的对象不是String类型,则直接返回false
- Length():返回当前字符串的长度。
l 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()):将所有英文字符转换大写字母。
l 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); } } }
截图