美文网首页
非正则表达式检验邮箱格式是否合法(Java代码实现)

非正则表达式检验邮箱格式是否合法(Java代码实现)

作者: 拾光_ | 来源:发表于2018-05-11 14:10 被阅读51次

    一、邮箱格式需满足以下要求

               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小白一枚,正在努力追赶,希望有志同道合的小伙伴可以共勉,一起努力学习,一起进步。
    

    相关文章

      网友评论

          本文标题:非正则表达式检验邮箱格式是否合法(Java代码实现)

          本文链接:https://www.haomeiwen.com/subject/smjfdftx.html