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

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代码实现)的更多相关文章

  1. JS验证邮箱格式是否正确 实例代码

    如何用js验证邮箱格式是否正确?分享一个例子.代码: /* *验证邮箱格式是否正确 *参数strEmail,需要验证的邮箱 */ function chkEmail(strEmail) { if (! ...

  2. js正则表达式:验证邮箱格式、密码复杂度、手机号码、QQ号码

    直接上代码             Java   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ...

  3. ORACLE中使用SQL的正则表达式判断邮箱格式

    在数据库中,有时需要判断字符串是否是一个或者多个邮箱格式,可以使用如下语句判断: ) FROM dual WHERE regexp_like(v_mail,'^\w+((-\w+)|(\.\w+))* ...

  4. Android 使用正则表达式验证邮箱格式是否正确

    /** * 验证邮箱格式是否正确 */ public boolean emailValidation(String email) { String regex = "\\w+([-+.]\\ ...

  5. jquery验证手机号码、邮箱格式是否正确示例代码

    本文为大家介绍下使用jquery验证邮箱.验证手机号码,具体实现思路及代码如下,感兴趣的朋友可以学习下 复制代码代码如下: //jquery验证邮箱  function checkSubmitEmai ...

  6. JS验证邮箱格式是否正确的代码

    验证邮箱格式是否正确的方法有很多,接下来为大家介绍下使用js是如何做到的 复制代码代码如下: /*  *验证邮箱格式是否正确  *参数strEmail,需要验证的邮箱  */ www.jbxue.co ...

  7. 推断一个java文件和邮箱格式是否合法

    import java.util.Scanner; public class StringTest { public static void main(String[] args) { int bac ...

  8. java 正则表达式验证邮箱格式是否合规 以及 正则表达式元字符

    package com.ykmimi.testtest; /** * 测试邮箱地址是否合规 * @author ukyor * */ public class EmailTest { public s ...

  9. [Swift通天遁地]七、数据与安全-(14)使用单元测试进行邮箱格式的验证

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

随机推荐

  1. SpriteBuilder中CCMotionStreak坐标类型不匹配

    在SpriteBuilder需要被跟随的(或是说被拖尾的)节点坐标类型是父百分比,先是将CCMotionStreak本身位置设置为百分比类型,但是无效. 将节点坐标改为正常点类型后,MotionStr ...

  2. 解决Plugin is too old,please update to a more recent version,or set ANDROID_DAILY_OVERRIDE..

    今天遇到了很诡异的事情. 昨天晚上还好好的工程今天就挂了,提示如下错误: Plugin is too old,please update to a more recent version,or set ...

  3. python +Django 搭建web开发环境初步,显示当前时间

    1.python 的安装 网上很多关于django跟python 开发的资料,这块我正在实习准备用这个两个合起来搞一个基于web 的东西出来现在开始学习,写点东西记录一下心得. 开发环境是window ...

  4. OpenCV特征点检测算法对比

    识别算法概述: SIFT/SURF基于灰度图, 一.首先建立图像金字塔,形成三维的图像空间,通过Hessian矩阵获取每一层的局部极大值,然后进行在极值点周围26个点进行NMS,从而得到粗略的特征点, ...

  5. JUnit4快速入门

    JUnit最佳实践 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class CardServiceTest {     /**      * 最佳 ...

  6. FPGrowth

    在挖掘关联规则的过程中,无可避免要处理海量的数据,也就是事务数据库如此之大,如果采用Apriori算法来挖掘,每次生成频繁k-项集的时候,可能都需要扫描事务数据库一遍,这是非常耗时的操作.那么,可以想 ...

  7. tomcat中的线程问题2

    最近在看线程的有关知识,碰到一个小问题,目前还没有解决,现记录下来. 如果在我们自己写的servlet里有成员变量,因为多线程的访问就会出现一些线程问题.这点大家都知道,我们看下面的例子. publi ...

  8. 【nginx】4xx,5xx 保持自定义header

    问题 nginx使用中,如果请求返回的状态code类似404或者50x这种,仍然返回自定义的header. 分析和解决 nginx文档中关于 add_header的部分 有这么一句 Adds the ...

  9. obj-c在Xcode之外如何使用@import关键字

    在Xcode中@import可以很方便的代替#import的功能,具体区别和便利请自行google之. 这里简单介绍下在Xcode之外如何使用@import.直接以 @import Foundatio ...

  10. The table name must be enclosed in double quotation marks or sqare bracket while accessing EXCEL by

      1  Preface DB Query Analyzer is presented by Master Gen feng, Ma from Chinese Mainland. It has Eng ...