一、邮箱格式需满足以下要求
1. 有且只有一个@
2. @不能放在开头,也不能放在结尾
3. @之后必须有.
4. @之前或之后不能紧跟.
5. @之前要有6个字符
6. 以com、org、cn、net结尾
二、代码实现
1. 实现代码
package homework3;
//邮箱检验是否合格
public class CheckEmail {
public boolean isEmail(String email) {
//判断是否为空邮箱
int k = 0;
if(email == null) {
return false;
}
/*
* 单引号引的数据 是char类型的
双引号引的数据 是String类型的
单引号只能引一个字符
而双引号可以引0个及其以上*
*/
//判断是否有仅有一个@且不能在开头或结尾
if(email.indexOf("@") > 0 && email.indexOf('@') == email.lastIndexOf('@') && email.indexOf('@') < email.length()-1) {
k++;
}
//判断"@"之后必须有"."且不能紧跟
if(email.indexOf('.',email.indexOf('@')) > email.indexOf('@')+1 ) {
k++;
}
//判断"@"之前或之后不能紧跟"."
if(email.indexOf('.') < email.indexOf('@')-1 || email.indexOf('.') > email.indexOf('@')+1 ) {
k++;
}
//@之前要有6个字符
if(email.indexOf('@') > 5 ) {
k++;
}
if(email.endsWith("com") || email.endsWith("org") || email.endsWith("cn") ||email.endsWith("net")) {
k++;
}
if(k == 5) {
return true;
}
return false;
}
}
2. 测试代码
package homework3;
import java.util.Scanner;
public class EmailTest {
public static void main(String[] args) {
do
{ Scanner sc = new Scanner(System.in);
System.out.println("请输入你的邮箱:");
String str = sc.nextLine(); //读取字符串型输入
CheckEmail email = new CheckEmail();
boolean result = email.isEmail(str);
if(result) {
System.out.println("邮箱地址合法");
}else {
System.out.println("邮箱地址不合法");
}
System.out.println(" ");
}
while(true);
}
}
3. 测试结果
三、总结
这是我在简书上第一篇文章,没有啥技术含量,但是却见证着我的学习与成长。
本人Java小白一枚,正在努力追赶,希望有志同道合的小伙伴可以共勉,一起努力学习,一起进步。
网友评论