1设计一个提供下面字符串操作的类
1)编写一个方法,查找在一个字符串中指定字符串出现的次数。
2)编写一个方法,参数(母字符串,目标字符串,替换字符串)将母字符串中的所有目标字符用替换字符串替换。
3)编写一个方法,判断一个email地址是否合法。
2.编写一个测试类,对1中的字符串类的方法逐一进行测试。
package pro3; public class String01 { public static void main(String[] args) { StringOpe string01=new StringOpe("I love China! China China"); StringOpe string02=new StringOpe("616@6@qq.com"); StringOpe string03=new StringOpe("_6166@qq.com"); StringOpe string04=new StringOpe("6166.qq@com"); StringOpe string05=new StringOpe("6166@qq.com"); System.out.println("China在I love China! China China中出现了"+string01.findTime("China")+"次"); System.out.println("I love China! China China 中China换成Hebau: "+string01.repStr("China", "Hebau")); System.out.println(string02.getter()+"这个邮箱"+string02.judge()); System.out.println(string03.getter()+"这个邮箱"+string03.judge()); System.out.println(string04.getter()+"这个邮箱"+string04.judge()); System.out.println(string05.getter()+"这个邮箱"+string05.judge()); } } class StringOpe{ private String string; public StringOpe(String string){ this.string=string; } public String getter(){ return string; } public int findTime(String str){ int number=0; int flag=0; while((flag=string.indexOf(str, flag))!=-1){ flag=flag+str.length(); number++; } return number; } public String repStr(String str1,String str2){ return string.replace(str1, str2); } public String judge(){ boolean i=judgeEmail(string); if(i==true){ return "邮箱地址合法"; }else if(i==false){ return "邮箱地址不合法"; } return ""; } private boolean judgeEmail(String string){ /* * 1.地址中不包括@ 或 . * 2.地址中包括多个 @ 或 . * 3.邮箱地址中 . 出现 在@ 前面 * 4.首字符是数字和字母以外的 * 5.用户名中出现其他字符 */ if(string.indexOf("@")==-1||string.indexOf(".")==-1){ return false; } if(string.indexOf("@")!=string.lastIndexOf("@")||string.indexOf(".")!=string.lastIndexOf(".")){ return false; } if(string.indexOf(".")<string.indexOf("@")){ return false; } if(!((string.charAt(0)>='0'&&string.charAt(0)<='9')||(string.charAt(0)>='a'&&string.charAt(0)<='z')||(string.charAt(0)>='A'&&string.charAt(0)<='Z'))){ return false; } for(int i=1;i<string.indexOf("@");i++){ if(!((string.charAt(i)>='0'&&string.charAt(i)<='9')||(string.charAt(i)>='a'&&string.charAt(i)<='z')||(string.charAt(i)>='A'&&string.charAt(i)<='Z')||(string.charAt(i)=='_'))){ return false; } } return true; } }